April 21, 2011
I'm certain this used to work:

class Foo
{
    public static
    {
        void bar() {}
    }
}

But I've found that now, anything inside the public static block is not actually static. I get an error attempting to call Foo.bar(). If I do this:

class Foo
{
    public
    {
        static void bar() {}
    }
}

...it works as expected. I tested with the override attribute, in case the handling of attributes had changed while I was away, but it works fine using the first form. I assume this is a bug, or a regression. Am I correct?
April 21, 2011
On Thu, 21 Apr 2011 04:54:49 -0400, Mike Parker <aldacron@gmail.com> wrote:

> I'm certain this used to work:
>
> class Foo
> {
>      public static
>      {
>          void bar() {}
>      }
> }
>
> But I've found that now, anything inside the public static block is not actually static. I get an error attempting to call Foo.bar(). If I do this:
>
> class Foo
> {
>      public
>      {
>          static void bar() {}
>      }
> }
>
> ...it works as expected. I tested with the override attribute, in case the handling of attributes had changed while I was away, but it works fine using the first form. I assume this is a bug, or a regression. Am I correct?

I would have expected the first form to work.  You can file as a bug and see what happens.  Worst case it gets closed as invalid :)

-Steve