Community
Participate
Working Groups
BETA_JAVA8: The grammar rules introduced at 1.7 time to support diamond, union types and try-with-resources need to be harmonized for JSR308 related changes. The grammar file in the 308 branch was completely oblivious to these changes made in master/head version of grammar. During the merge, the new rules from master/head were integrated into the grammar by mere textual insertion and resolution of conflicts where they occurred. This is not enough as illustrated by this example, where we fail to flag an undefined annotation type. Also conflict-resolution adopted at merge time is not always proper and needs scrutiny (e.g Type0 should have been used in places where TypeInternal is used) //------------------------------------8<-------------------- import java.util.ArrayList; import java.util.List; public class X { public void foo(String fileName) { List<String> l = new @MissingTypeNotIgnored ArrayList<String>(); List<String> l1 = new @MissingTypeIgnored ArrayList<>(); } }
Fix and tests released via http://git.eclipse.org/c/jdt/eclipse.jdt.core.git/commit/?h=BETA_JAVA8&id=7f50d6771d9939aee1b9841b7940c772ca3dad14