Bug 530146 - NullPointerException in EvalCompositeAccess.computeForFunctionCall
Summary: NullPointerException in EvalCompositeAccess.computeForFunctionCall
Status: NEW
Alias: None
Product: CDT
Classification: Tools
Component: cdt-parser (show other bugs)
Version: 9.4.0   Edit
Hardware: All All
: P3 normal (vote)
Target Milestone: ---   Edit
Assignee: Project Inbox CLA
QA Contact: Jonah Graham CLA
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2018-01-22 16:56 EST by EPP Error Reports CLA
Modified: 2020-09-04 15:26 EDT (History)
2 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description EPP Error Reports CLA 2018-01-22 16:56:55 EST
The following problem was reported via the automated error reporting:

Message: Error while parsing /main/hornet/cpx/src/CpxRadius.cpp.
java.lang.NullPointerException: null
    at org.eclipse.cdt.internal.core.dom.parser.cpp.semantics.EvalCompositeAccess.computeForFunctionCall(EvalCompositeAccess.java:135)
    at org.eclipse.cdt.internal.core.dom.parser.cpp.semantics.EvalReference.computeForFunctionCall(EvalReference.java:120)
    at org.eclipse.cdt.internal.core.dom.parser.cpp.semantics.EvalUtil.getValuePair(EvalUtil.java:131)
    at org.eclipse.cdt.internal.core.dom.parser.cpp.semantics.EvalBinary.computeForFunctionCall(EvalBinary.java:443)
    at org.eclipse.cdt.internal.core.dom.parser.cpp.semantics.EvalTypeId.computeForFunctionCall(EvalTypeId.java:408)
    at org.eclipse.cdt.internal.core.dom.parser.cpp.semantics.EvalConditional.computeForFunctionCall(EvalConditional.java:366)
    at org.eclipse.cdt.internal.core.dom.parser.cpp.semantics.EvalComma.computeForFunctionCall(EvalComma.java:222)
    at org.eclipse.cdt.internal.core.dom.parser.cpp.semantics.ExecDeclarator.createInitialValue(ExecDeclarator.java:96)
    at org.eclipse.cdt.internal.core.dom.parser.cpp.semantics.ExecDeclarator.executeForFunctionCall(ExecDeclarator.java:51)
    at org.eclipse.cdt.internal.core.dom.parser.cpp.semantics.EvalUtil.getVariableValue(EvalUtil.java:182)
    at org.eclipse.cdt.internal.core.dom.parser.cpp.semantics.EvalBinding.getValue(EvalBinding.java:333)
    at org.eclipse.cdt.internal.core.dom.parser.cpp.semantics.EvalBinary.getValue(EvalBinary.java:200)
    at org.eclipse.cdt.internal.core.dom.parser.ValueFactory.create(ValueFactory.java:90)
    at org.eclipse.cdt.internal.core.dom.parser.cpp.CPPArrayType.getSize(CPPArrayType.java:88)
    at org.eclipse.cdt.internal.core.dom.parser.cpp.semantics.EvalBinding.computeType(EvalBinding.java:286)
    at org.eclipse.cdt.internal.core.dom.parser.cpp.semantics.EvalBinding.getType(EvalBinding.java:263)
    at org.eclipse.cdt.internal.core.dom.parser.cpp.semantics.LookupData.getFunctionArgumentTypes(LookupData.java:542)
    at org.eclipse.cdt.internal.core.dom.parser.cpp.semantics.CPPSemantics.getAssociatedScopes(CPPSemantics.java:797)
    at org.eclipse.cdt.internal.core.dom.parser.cpp.semantics.CPPSemantics.doArgumentDependentLookup(CPPSemantics.java:673)
    at org.eclipse.cdt.internal.core.dom.parser.cpp.semantics.CPPSemantics.resolveBinding(CPPSemantics.java:351)
    at org.eclipse.cdt.internal.core.dom.parser.cpp.semantics.CPPVisitor.resolveBinding(CPPVisitor.java:1462)
    at org.eclipse.cdt.internal.core.dom.parser.cpp.semantics.CPPVisitor.createBinding(CPPVisitor.java:312)
    at org.eclipse.cdt.internal.core.dom.parser.cpp.CPPASTName.createIntermediateBinding(CPPASTName.java:64)
    at org.eclipse.cdt.internal.core.dom.parser.cpp.CPPASTNameBase.resolvePreBinding(CPPASTNameBase.java:94)
    at org.eclipse.cdt.internal.core.dom.parser.cpp.CPPASTFunctionCallExpression.checkForExplicitTypeConversion(CPPASTFunctionCallExpression.java:307)
    at org.eclipse.cdt.internal.core.dom.parser.cpp.CPPASTFunctionCallExpression.computeEvaluation(CPPASTFunctionCallExpression.java:286)
    at org.eclipse.cdt.internal.core.dom.parser.cpp.CPPASTFunctionCallExpression.getEvaluation(CPPASTFunctionCallExpression.java:277)
    at org.eclipse.cdt.internal.core.dom.parser.cpp.CPPASTFunctionCallExpression.getOverload(CPPASTFunctionCallExpression.java:248)
    at org.eclipse.cdt.internal.core.dom.parser.cpp.CPPASTFunctionCallExpression.getImplicitNames(CPPASTFunctionCallExpression.java:128)
    at org.eclipse.cdt.internal.core.dom.parser.cpp.CPPASTFunctionCallExpression.accept(CPPASTFunctionCallExpression.java:206)
    at org.eclipse.cdt.internal.core.dom.parser.cpp.CPPASTExpressionStatement.accept(CPPASTExpressionStatement.java:72)
    at org.eclipse.cdt.internal.core.dom.parser.cpp.CPPASTCompoundStatement.accept(CPPASTCompoundStatement.java:95)
    at org.eclipse.cdt.internal.core.dom.parser.cpp.CPPASTFunctionDefinition.accept(CPPASTFunctionDefinition.java:222)
    at org.eclipse.cdt.internal.core.dom.parser.ASTTranslationUnit.accept(ASTTranslationUnit.java:275)
    at org.eclipse.cdt.internal.core.pdom.PDOMWriter.process(PDOMWriter.java:533)
    at org.eclipse.cdt.internal.core.pdom.AbstractIndexerTask.writeToIndex(AbstractIndexerTask.java:1279)
    at org.eclipse.cdt.internal.core.pdom.AbstractIndexerTask.parseFile(AbstractIndexerTask.java:1096)
    at org.eclipse.cdt.internal.core.pdom.AbstractIndexerTask.parseLinkage(AbstractIndexerTask.java:930)
    at org.eclipse.cdt.internal.core.pdom.AbstractIndexerTask.runTask(AbstractIndexerTask.java:557)
    at org.eclipse.cdt.internal.core.pdom.indexer.PDOMIndexerTask.run(PDOMIndexerTask.java:161)
    at org.eclipse.cdt.internal.core.pdom.indexer.PDOMRebuildTask.run(PDOMRebuildTask.java:90)
    at org.eclipse.cdt.internal.core.pdom.PDOMIndexerJob.run(PDOMIndexerJob.java:155)
    at org.eclipse.core.internal.jobs.Worker.run(Worker.java:56)



Bundles:
| org.eclipse.cdt.core | 6.4.0.201712051550 | 6.4.0.201712051550 |
| org.eclipse.core.jobs | 3.9.2.v20171030-1027 | 3.9.2.v20171030-1027 |

Operating Systems:
| Linux | 4.13.0 | 4.13.0 |


The above information is a snapshot of the collected data. Visit https://dev.eclipse.org/recommenders/committers/aeri/v2/#!/problems/5a5d23a4e4b02aaf8b265de2 for the latest data.

Thank you for your assistance.
 Your friendly error-reports-inbox.


Created on behalf of zeratul976@xxxxxx.xxx
Comment 1 Nathan Ridge CLA 2018-01-22 16:57:41 EST
It would be nice to have a testcase for this, instead of tryign to guess what exactly is null on that line and inserting random null checks.