Bug 120585 [clean up] needs two invocations until all clean ups are performed
org.eclipse.jdt.ui/ui/org/eclipse/jdt/ui/JavaElementLabels.java
}
		buf.append(typeName);
		if (getFlag(flags, T_TYPE_PARAMETERS)) {
			if (getFlag(flags, USE_RESOLVED) && type.isResolved()) {
				BindingKey key= new BindingKey(type.getKey());
				if (key.isParameterizedType()) {
					String[] typeArguments= key.getTypeArguments();
					getTypeArgumentSignaturesLabel(typeArguments, flags, buf);
				} else {
					String[] typeParameters= Signature.getTypeParameters(key.internalToSignature());
					getTypeParameterSignaturesLabel(typeParameters, flags, buf);
				}
			} else if (type.exists()) {
				try {
					getTypeParametersLabel(type.getTypeParameters(), flags, buf);
				} catch (JavaModelException e) {
					
				}
			}
		}
		
		if (getFlag(flags, T_POST_QUALIFIED)) {
			buf.append(CONCAT_STRING);
			IType declaringType= type.getDeclaringType();
			if (declaringType != null) {
				getTypeLabel(declaringType, T_FULLY_QUALIFIED | (flags & QUALIFIER_FLAGS), buf);
				int parentType= type.getParent().getElementType();
				if (parentType == IJavaElement.METHOD || parentType == IJavaElement.FIELD || parentType == IJavaElement.INITIALIZER) { 
					buf.append('.');
					getElementLabel(type.getParent(), 0, buf);