(Mod's, please move this to the correct place if this isn't the correct place to post this)

Within Java 7's spec, section: 8.1.2.
It states:

It is a compile-time error to refer to a type parameter of a generic class C anywhere in:

- the declaration of a static member of C, or

- the declaration of a static member of any type declaration nested within C, or

- a static initializer of C, or

- any class nested within C.

However, the last line should be:

- a static initializer of any class nested within C.

The last Java Spec (5.0), worded it as:

It is a compile-time error to refer to a type parameter of a class C anywhere in the declaration of a static member of C or the declaration of a static member of any type declaration nested within C. It is a compile-time error to refer to a type parameter of a class C within a static initializer of C or any class nested within C.

And i believe whoever wrote the latest spec, took the sentence:

It is a compile-time error to refer to a type parameter of a class C within a static initializer of C or any class nested within C.