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?