Community
Participate
Working Groups
What steps will reproduce the problem? 1. clone the qt4 repo and add it as cpp project with autotools to eclipse 2. reconfigure the project 3. watch the errors pile up in error log -- Error Details -- Date: Fri Apr 04 22:18:21 CEST 2014 Message: Error while parsing /Qt/src/3rdparty/webkit/Source/WebCore/platform/graphics/GlyphPageTreeNode.cpp. Severity: Error Product: Eclipse 2.0.2.20140224-0000 (org.eclipse.epp.package.cpp.product) Plugin: org.eclipse.cdt.core Session Data: eclipse.buildId=4.3.2.M20140221-1700 java.version=1.7.0_45 java.vendor=Oracle Corporation BootLoader constants: OS=linux, ARCH=x86_64, WS=gtk, NL=en_US Framework arguments: -product org.eclipse.epp.package.cpp.product Command-line arguments: -os linux -ws gtk -arch x86_64 -product org.eclipse.epp.package.cpp.product Exception Stack Trace: java.lang.NullPointerException at org.eclipse.cdt.internal.core.dom.parser.cpp.semantics.EvalBinding.getBinding(EvalBinding.java:103) at org.eclipse.cdt.internal.core.dom.parser.cpp.semantics.EvalBinding.computeType(EvalBinding.java:250) at org.eclipse.cdt.internal.core.dom.parser.cpp.semantics.EvalBinding.getTypeOrFunctionSet(EvalBinding.java:244) at org.eclipse.cdt.internal.core.dom.parser.cpp.CPPTemplateNonTypeArgument.isPackExpansion(CPPTemplateNonTypeArgument.java:90) at org.eclipse.cdt.internal.core.dom.parser.cpp.semantics.CPPTemplates.instantiateArguments(CPPTemplates.java:1156) at org.eclipse.cdt.internal.core.dom.parser.cpp.semantics.CPPTemplates.resolveDeferredClassInstance(CPPTemplates.java:2739) at org.eclipse.cdt.internal.core.dom.parser.cpp.semantics.CPPTemplates.resolveUnknown(CPPTemplates.java:2669) at org.eclipse.cdt.internal.core.dom.parser.cpp.semantics.CPPTemplates.instantiateType(CPPTemplates.java:1296) at org.eclipse.cdt.internal.core.dom.parser.cpp.semantics.CPPTemplates.instantiateType(CPPTemplates.java:1347) at org.eclipse.cdt.internal.core.dom.parser.cpp.semantics.CPPTemplates.instantiateType(CPPTemplates.java:1347) at org.eclipse.cdt.internal.core.dom.parser.cpp.semantics.TemplateArgumentDeduction.deduceFromFunctionArgs(TemplateArgumentDeduction.java:136) at org.eclipse.cdt.internal.core.dom.parser.cpp.semantics.TemplateArgumentDeduction.deduceForFunctionCall(TemplateArgumentDeduction.java:99) at org.eclipse.cdt.internal.core.dom.parser.cpp.semantics.CPPTemplates.instantiateForFunctionCall(CPPTemplates.java:1990) at org.eclipse.cdt.internal.core.dom.parser.cpp.semantics.CPPTemplates.instantiateForFunctionCall(CPPTemplates.java:1969) at org.eclipse.cdt.internal.core.dom.parser.cpp.semantics.CPPSemantics.resolveFunction(CPPSemantics.java:2436) at org.eclipse.cdt.internal.core.dom.parser.cpp.semantics.CPPSemantics.resolveAmbiguities(CPPSemantics.java:2138) at org.eclipse.cdt.internal.core.dom.parser.cpp.semantics.CPPSemantics.resolveBinding(CPPSemantics.java:305) at org.eclipse.cdt.internal.core.dom.parser.cpp.semantics.CPPVisitor.resolveBinding(CPPVisitor.java:1375) at org.eclipse.cdt.internal.core.dom.parser.cpp.semantics.CPPVisitor.createBinding(CPPVisitor.java:302) at org.eclipse.cdt.internal.core.dom.parser.cpp.CPPASTName.createIntermediateBinding(CPPASTName.java:61) at org.eclipse.cdt.internal.core.dom.parser.cpp.CPPASTNameBase.resolvePreBinding(CPPASTNameBase.java:79) at org.eclipse.cdt.internal.core.dom.parser.cpp.CPPASTFunctionCallExpression.checkForExplicitTypeConversion(CPPASTFunctionCallExpression.java:312) at org.eclipse.cdt.internal.core.dom.parser.cpp.CPPASTFunctionCallExpression.computeEvaluation(CPPASTFunctionCallExpression.java:297) at org.eclipse.cdt.internal.core.dom.parser.cpp.CPPASTFunctionCallExpression.getEvaluation(CPPASTFunctionCallExpression.java:288) at org.eclipse.cdt.internal.core.dom.parser.cpp.CPPASTFunctionCallExpression.getOverload(CPPASTFunctionCallExpression.java:263) at org.eclipse.cdt.internal.core.dom.parser.cpp.CPPASTFunctionCallExpression.getImplicitNames(CPPASTFunctionCallExpression.java:122) at org.eclipse.cdt.internal.core.dom.parser.cpp.CPPASTFunctionCallExpression.accept(CPPASTFunctionCallExpression.java:191) at org.eclipse.cdt.internal.core.dom.parser.cpp.CPPASTExpressionStatement.accept(CPPASTExpressionStatement.java:73) at org.eclipse.cdt.internal.core.dom.parser.cpp.CPPASTCompoundStatement.accept(CPPASTCompoundStatement.java:85) at org.eclipse.cdt.internal.core.dom.parser.cpp.CPPASTFunctionDefinition.accept(CPPASTFunctionDefinition.java:198) at org.eclipse.cdt.internal.core.dom.parser.cpp.CPPASTNamespaceDefinition.accept(CPPASTNamespaceDefinition.java:135) at org.eclipse.cdt.internal.core.dom.parser.ASTTranslationUnit.accept(ASTTranslationUnit.java:265) at org.eclipse.cdt.internal.core.pdom.PDOMWriter.process(PDOMWriter.java:495) at org.eclipse.cdt.internal.core.pdom.AbstractIndexerTask.writeToIndex(AbstractIndexerTask.java:1229) at org.eclipse.cdt.internal.core.pdom.AbstractIndexerTask.parseFile(AbstractIndexerTask.java:1050) at org.eclipse.cdt.internal.core.pdom.AbstractIndexerTask.parseLinkage(AbstractIndexerTask.java:857) at org.eclipse.cdt.internal.core.pdom.AbstractIndexerTask.runTask(AbstractIndexerTask.java:537) at org.eclipse.cdt.internal.core.pdom.indexer.PDOMIndexerTask.run(PDOMIndexerTask.java:146) at org.eclipse.cdt.internal.core.pdom.indexer.PDOMUpdateTask.run(PDOMUpdateTask.java:94) at org.eclipse.cdt.internal.core.pdom.PDOMIndexerJob.run(PDOMIndexerJob.java:137) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53)
This should be fixed in the upcoming CDT 8.4, could you try that version? You can go to Help > Install New Software and add this update site: http://download.eclipse.org/tools/cdt/builds/8.4/nightly
The NPEs are gone but the following 2 errors remain. Should I open a new bug report for them?
org.eclipse.cdt.core.dom.ast.DOMException at org.eclipse.cdt.internal.core.dom.parser.cpp.semantics.CPPTemplates.createTemplateArgumentArray(CPPTemplates.java:1933) at org.eclipse.cdt.internal.core.dom.parser.cpp.semantics.LookupData.<init>(LookupData.java:125) at org.eclipse.cdt.internal.core.dom.parser.cpp.semantics.CPPSemantics.createLookupData(CPPSemantics.java:652) at org.eclipse.cdt.internal.core.dom.parser.cpp.semantics.CPPSemantics.resolveBinding(CPPSemantics.java:286) at org.eclipse.cdt.internal.core.dom.parser.cpp.semantics.CPPVisitor.createBinding(CPPVisitor.java:280) at org.eclipse.cdt.internal.core.dom.parser.cpp.semantics.CPPTemplates.createBinding(CPPTemplates.java:646) at org.eclipse.cdt.internal.core.dom.parser.cpp.CPPASTTemplateId.createIntermediateBinding(CPPASTTemplateId.java:124) at org.eclipse.cdt.internal.core.dom.parser.cpp.CPPASTNameBase.resolvePreBinding(CPPASTNameBase.java:94) at org.eclipse.cdt.internal.core.dom.parser.cpp.CPPASTQualifiedName.resolvePreBinding(CPPASTQualifiedName.java:98) at org.eclipse.cdt.internal.core.dom.parser.cpp.CPPASTFunctionCallExpression.checkForExplicitTypeConversion(CPPASTFunctionCallExpression.java:312) at org.eclipse.cdt.internal.core.dom.parser.cpp.CPPASTFunctionCallExpression.computeEvaluation(CPPASTFunctionCallExpression.java:297) at org.eclipse.cdt.internal.core.dom.parser.cpp.CPPASTFunctionCallExpression.getEvaluation(CPPASTFunctionCallExpression.java:288) at org.eclipse.cdt.internal.core.dom.parser.cpp.CPPASTInitializerList.createEvaluation(CPPASTInitializerList.java:169) at org.eclipse.cdt.internal.core.dom.parser.cpp.CPPASTInitializerList.getEvaluation(CPPASTInitializerList.java:161) at org.eclipse.cdt.internal.core.dom.parser.cpp.CPPASTBinaryExpression.computeEvaluation(CPPASTBinaryExpression.java:278) at org.eclipse.cdt.internal.core.dom.parser.cpp.CPPASTBinaryExpression.getEvaluation(CPPASTBinaryExpression.java:269) at org.eclipse.cdt.internal.core.dom.parser.cpp.CPPASTBinaryExpression.getOverload(CPPASTBinaryExpression.java:260) at org.eclipse.cdt.internal.core.dom.parser.cpp.CPPASTBinaryExpression.getImplicitNames(CPPASTBinaryExpression.java:131) at org.eclipse.cdt.internal.core.dom.parser.cpp.CPPASTBinaryExpression.acceptWithoutRecursion(CPPASTBinaryExpression.java:216) at org.eclipse.cdt.internal.core.dom.parser.cpp.CPPASTBinaryExpression.accept(CPPASTBinaryExpression.java:149) at org.eclipse.cdt.internal.core.dom.parser.cpp.CPPASTExpressionStatement.accept(CPPASTExpressionStatement.java:73) at org.eclipse.cdt.internal.core.dom.parser.cpp.CPPASTCompoundStatement.accept(CPPASTCompoundStatement.java:85) at org.eclipse.cdt.internal.core.dom.parser.cpp.CPPASTFunctionDefinition.accept(CPPASTFunctionDefinition.java:202) at org.eclipse.cdt.internal.core.dom.parser.cpp.CPPASTNamespaceDefinition.accept(CPPASTNamespaceDefinition.java:139) at org.eclipse.cdt.internal.core.dom.parser.ASTTranslationUnit.accept(ASTTranslationUnit.java:265) at org.eclipse.cdt.internal.core.pdom.PDOMWriter.process(PDOMWriter.java:497) at org.eclipse.cdt.internal.core.pdom.AbstractIndexerTask.writeToIndex(AbstractIndexerTask.java:1234) at org.eclipse.cdt.internal.core.pdom.AbstractIndexerTask.parseFile(AbstractIndexerTask.java:1052) at org.eclipse.cdt.internal.core.pdom.AbstractIndexerTask.parseLinkage(AbstractIndexerTask.java:857) at org.eclipse.cdt.internal.core.pdom.AbstractIndexerTask.runTask(AbstractIndexerTask.java:537) at org.eclipse.cdt.internal.core.pdom.indexer.PDOMIndexerTask.run(PDOMIndexerTask.java:146) at org.eclipse.cdt.internal.core.pdom.indexer.PDOMRebuildTask.run(PDOMRebuildTask.java:87) at org.eclipse.cdt.internal.core.pdom.PDOMIndexerJob.run(PDOMIndexerJob.java:137) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53)
java.lang.Exception: Unsafe method call. Instantiation of dependent expressions may not work. at org.eclipse.cdt.internal.core.dom.parser.cpp.AbstractCPPClassSpecializationScope.getImplicitMethods(AbstractCPPClassSpecializationScope.java:199) at org.eclipse.cdt.internal.core.pdom.dom.cpp.PDOMCPPLinkage.addImplicitMethods(PDOMCPPLinkage.java:651) at org.eclipse.cdt.internal.core.pdom.dom.cpp.PDOMCPPLinkage.addBinding(PDOMCPPLinkage.java:341) at org.eclipse.cdt.internal.core.pdom.dom.PDOMFile.createPDOMName(PDOMFile.java:510) at org.eclipse.cdt.internal.core.pdom.dom.PDOMFile.addNames(PDOMFile.java:477) at org.eclipse.cdt.internal.core.pdom.WritablePDOM.addFileContent(WritablePDOM.java:155) at org.eclipse.cdt.internal.core.index.WritableCIndex.setFileContent(WritableCIndex.java:86) at org.eclipse.cdt.internal.core.pdom.PDOMWriter.storeFileInIndex(PDOMWriter.java:615) at org.eclipse.cdt.internal.core.pdom.PDOMWriter.storeSymbolsInIndex(PDOMWriter.java:322) at org.eclipse.cdt.internal.core.pdom.PDOMWriter.addSymbols(PDOMWriter.java:271) at org.eclipse.cdt.internal.core.pdom.AbstractIndexerTask.writeToIndex(AbstractIndexerTask.java:1236) at org.eclipse.cdt.internal.core.pdom.AbstractIndexerTask.parseFile(AbstractIndexerTask.java:1052) at org.eclipse.cdt.internal.core.pdom.AbstractIndexerTask.parseLinkage(AbstractIndexerTask.java:857) at org.eclipse.cdt.internal.core.pdom.AbstractIndexerTask.runTask(AbstractIndexerTask.java:537) at org.eclipse.cdt.internal.core.pdom.indexer.PDOMIndexerTask.run(PDOMIndexerTask.java:146) at org.eclipse.cdt.internal.core.pdom.indexer.PDOMRebuildTask.run(PDOMRebuildTask.java:87) at org.eclipse.cdt.internal.core.pdom.PDOMIndexerJob.run(PDOMIndexerJob.java:137) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53)
Patch that fixes the error from comment 4: https://git.eclipse.org/r/24512 Regarding the error from comment 3: it would be very helpful to have a reduced example that triggers it. Note that since this exception is caught, it should not have any negative effects beyond perhaps incorrect name resolution at the spot that triggered the exception.
for the exception from comment 3 i have found that when you do Index > Update with modified files on the folder qt/src/3rdparty/webkit/Source/ThirdParty/ANGLE/src/libGLESv2 it will trigger several of them after ~5 sec. You might need to run a full index once though. OTOH I have no idea which source really triggers them as the error description is rather vague. Better error messages might help. The error from comment 4 is gone with the latest nightly of CDT.
(In reply to Nathan Ridge from comment #5) > Patch that fixes the error from comment 4: https://git.eclipse.org/r/24512 (This patch was committed in http://git.eclipse.org/c/cdt/org.eclipse.cdt.git/commit/?id=b4d65483edfeb782388b24a5df489a20072af50a).
*** Bug 393622 has been marked as a duplicate of this bug. ***