1
0
Fork 0
mirror of https://github.com/eclipse-cdt/cdt synced 2025-07-19 23:15:24 +02:00

Bug 513105 - Avoid pushing a null lookup point in CPPVisitor.createType()

ArrayDeque doesn't allow null elements.

Change-Id: Ib610cfedf02232d30b4fc4e1b4d4d5ba45d7aee3
This commit is contained in:
Nathan Ridge 2017-09-27 18:45:42 -04:00
parent bb9d1db323
commit 80dc8d9c25

View file

@ -2071,18 +2071,15 @@ public class CPPVisitor extends ASTQueries {
public static IType createType(IASTDeclarator declarator) { public static IType createType(IASTDeclarator declarator) {
// Resolve placeholders by default. // Resolve placeholders by default.
try {
CPPSemantics.pushLookupPoint(declarator);
return createType(declarator, RESOLVE_PLACEHOLDERS); return createType(declarator, RESOLVE_PLACEHOLDERS);
} finally {
CPPSemantics.popLookupPoint();
}
} }
public static IType createType(IASTDeclarator declarator, int flags) { public static IType createType(IASTDeclarator declarator, int flags) {
if (declarator == null) if (declarator == null)
return ProblemType.NO_NAME; return ProblemType.NO_NAME;
CPPSemantics.pushLookupPoint(declarator);
try {
declarator= findOutermostDeclarator(declarator); declarator= findOutermostDeclarator(declarator);
IASTNode parent = declarator.getParent(); IASTNode parent = declarator.getParent();
@ -2130,6 +2127,9 @@ public class CPPVisitor extends ASTQueries {
type= new CPPParameterPackType(type); type= new CPPParameterPackType(type);
} }
return type; return type;
} finally {
CPPSemantics.popLookupPoint();
}
} }
private static IType createAutoParameterType(IASTDeclSpecifier declSpec, IASTDeclarator declarator, private static IType createAutoParameterType(IASTDeclSpecifier declSpec, IASTDeclarator declarator,