From "Declarations" in D 2.0 guide: Declarator2: BasicType2 Declarator2 ( Declarator2 ) ( Declarator2 ) DeclaratorSuffixes This definition cannot be correct, as every option in this alternatives includes Declarator2 itself in the definition, resulting in infinite expansion.
Before considering D2 done, this and other bugs in the language spec should be fixed.
http://www.dsource.org/projects/phobos/changeset/2152