diff --git a/core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/CModelBuilder2.java b/core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/CModelBuilder2.java index 0e804cced6f..246a5c45b25 100644 --- a/core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/CModelBuilder2.java +++ b/core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/CModelBuilder2.java @@ -228,6 +228,9 @@ public class CModelBuilder2 implements IContributedModelBuilder { } long startTime= System.currentTimeMillis(); final IASTTranslationUnit ast= fTranslationUnit.getAST(index, quickParseMode ? ITranslationUnit.AST_SKIP_ALL_HEADERS : 0); + if (ast == null) { + return; + } Util.debugLog("CModelBuilder2: parsing " //$NON-NLS-1$ + fTranslationUnit.getElementName() + " mode="+ (quickParseMode ? "fast " : "full ") //$NON-NLS-1$ //$NON-NLS-2$ @@ -372,7 +375,7 @@ public class CModelBuilder2 implements IContributedModelBuilder { final IASTFileLocation problemLocation= problem.getFileLocation(); if (problemLocation != null) { final int startOffset= problemLocation.getNodeOffset(); - element.setIdPos(startOffset + nameIdx - 1, name.length() + 2); + element.setIdPos(startOffset + nameIdx, name.length()); } } else { setIdentifierPosition(element, problem);