1.1 --- a/src/share/classes/com/sun/tools/javadoc/TypeMaker.java Tue Oct 13 18:41:56 2015 +0300 1.2 +++ b/src/share/classes/com/sun/tools/javadoc/TypeMaker.java Mon Sep 28 16:56:26 2015 +0200 1.3 @@ -28,6 +28,7 @@ 1.4 import com.sun.javadoc.*; 1.5 import com.sun.tools.javac.code.Symbol; 1.6 import com.sun.tools.javac.code.Symbol.ClassSymbol; 1.7 +import com.sun.tools.javac.code.Symbol.CompletionFailure; 1.8 import com.sun.tools.javac.code.Type; 1.9 import com.sun.tools.javac.code.Type.ArrayType; 1.10 import com.sun.tools.javac.code.Type.ClassType; 1.11 @@ -56,8 +57,21 @@ 1.12 return getType(env, t, errorToClassDoc, true); 1.13 } 1.14 1.15 + public static com.sun.javadoc.Type getType(DocEnv env, Type t, 1.16 + boolean errToClassDoc, boolean considerAnnotations) { 1.17 + try { 1.18 + return getTypeImpl(env, t, errToClassDoc, considerAnnotations); 1.19 + } catch (CompletionFailure cf) { 1.20 + /* Quietly ignore completion failures and try again - the type 1.21 + * for which the CompletionFailure was thrown shouldn't be completed 1.22 + * again by the completer that threw the CompletionFailure. 1.23 + */ 1.24 + return getType(env, t, errToClassDoc, considerAnnotations); 1.25 + } 1.26 + } 1.27 + 1.28 @SuppressWarnings("fallthrough") 1.29 - public static com.sun.javadoc.Type getType(DocEnv env, Type t, 1.30 + private static com.sun.javadoc.Type getTypeImpl(DocEnv env, Type t, 1.31 boolean errToClassDoc, boolean considerAnnotations) { 1.32 if (env.legacyDoclet) { 1.33 t = env.types.erasure(t);