--- a/langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/code/Types.java Thu Oct 23 10:40:02 2014 -0700
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/code/Types.java Thu Oct 23 10:42:44 2014 -0700
@@ -3634,7 +3634,8 @@
for (Type erasedSupertype : mec) {
List<Type> lci = List.of(asSuper(ts[startIdx], erasedSupertype.tsym));
for (int i = startIdx + 1 ; i < ts.length ; i++) {
- lci = intersect(lci, List.of(asSuper(ts[i], erasedSupertype.tsym)));
+ Type superType = asSuper(ts[i], erasedSupertype.tsym);
+ lci = intersect(lci, superType != null ? List.of(superType) : List.<Type>nil());
}
candidates = candidates.appendList(lci);
}