diff --git a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPSemantics.java b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPSemantics.java index e04f136cf0f..70c0844eb82 100644 --- a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPSemantics.java +++ b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPSemantics.java @@ -2644,9 +2644,8 @@ public class CPPSemantics { static private boolean isCompleteType( IType type ){ type = getUltimateType( type, false ); - if( type instanceof ICPPClassType && ((ICPPInternalBinding)type).getDefinition() == null ){ - return false; - } + if( type instanceof ICPPClassType && type instanceof ICPPInternalBinding ) + return (((ICPPInternalBinding)type).getDefinition() != null ); return true; } static private Cost lvalue_to_rvalue( IType source, IType target ) throws DOMException{