mirror of
https://github.com/eclipse-cdt/cdt
synced 2025-04-29 19:45:01 +02:00
fix bug 83709
This commit is contained in:
parent
539b5c0633
commit
ddeca093ea
1 changed files with 16 additions and 4 deletions
|
@ -39,7 +39,6 @@ import org.eclipse.cdt.core.dom.ast.IASTFieldReference;
|
||||||
import org.eclipse.cdt.core.dom.ast.IASTForStatement;
|
import org.eclipse.cdt.core.dom.ast.IASTForStatement;
|
||||||
import org.eclipse.cdt.core.dom.ast.IASTFunctionCallExpression;
|
import org.eclipse.cdt.core.dom.ast.IASTFunctionCallExpression;
|
||||||
import org.eclipse.cdt.core.dom.ast.IASTFunctionDeclarator;
|
import org.eclipse.cdt.core.dom.ast.IASTFunctionDeclarator;
|
||||||
import org.eclipse.cdt.core.dom.ast.IASTStandardFunctionDeclarator;
|
|
||||||
import org.eclipse.cdt.core.dom.ast.IASTFunctionDefinition;
|
import org.eclipse.cdt.core.dom.ast.IASTFunctionDefinition;
|
||||||
import org.eclipse.cdt.core.dom.ast.IASTGotoStatement;
|
import org.eclipse.cdt.core.dom.ast.IASTGotoStatement;
|
||||||
import org.eclipse.cdt.core.dom.ast.IASTIdExpression;
|
import org.eclipse.cdt.core.dom.ast.IASTIdExpression;
|
||||||
|
@ -60,6 +59,7 @@ import org.eclipse.cdt.core.dom.ast.IASTProblemHolder;
|
||||||
import org.eclipse.cdt.core.dom.ast.IASTReturnStatement;
|
import org.eclipse.cdt.core.dom.ast.IASTReturnStatement;
|
||||||
import org.eclipse.cdt.core.dom.ast.IASTSimpleDeclSpecifier;
|
import org.eclipse.cdt.core.dom.ast.IASTSimpleDeclSpecifier;
|
||||||
import org.eclipse.cdt.core.dom.ast.IASTSimpleDeclaration;
|
import org.eclipse.cdt.core.dom.ast.IASTSimpleDeclaration;
|
||||||
|
import org.eclipse.cdt.core.dom.ast.IASTStandardFunctionDeclarator;
|
||||||
import org.eclipse.cdt.core.dom.ast.IASTStatement;
|
import org.eclipse.cdt.core.dom.ast.IASTStatement;
|
||||||
import org.eclipse.cdt.core.dom.ast.IASTSwitchStatement;
|
import org.eclipse.cdt.core.dom.ast.IASTSwitchStatement;
|
||||||
import org.eclipse.cdt.core.dom.ast.IASTTranslationUnit;
|
import org.eclipse.cdt.core.dom.ast.IASTTranslationUnit;
|
||||||
|
@ -835,9 +835,7 @@ public class CPPVisitor {
|
||||||
ICPPASTFunctionDeclarator fdtor = (ICPPASTFunctionDeclarator) declarator;
|
ICPPASTFunctionDeclarator fdtor = (ICPPASTFunctionDeclarator) declarator;
|
||||||
IASTParameterDeclaration [] list = fdtor.getParameters();
|
IASTParameterDeclaration [] list = fdtor.getParameters();
|
||||||
for( int i = 0; i < list.length; i++ ){
|
for( int i = 0; i < list.length; i++ ){
|
||||||
IASTParameterDeclaration param = list[i];
|
if( !visitParameterDeclaration( list[i], action ) ) return false;
|
||||||
if( !visitDeclSpecifier( param.getDeclSpecifier(), action ) ) return false;
|
|
||||||
if( !visitDeclarator( param.getDeclarator(), action ) ) return false;
|
|
||||||
}
|
}
|
||||||
ICPPASTConstructorChainInitializer [] ctorChain = fdtor.getConstructorChain();
|
ICPPASTConstructorChainInitializer [] ctorChain = fdtor.getConstructorChain();
|
||||||
for( int i = 0; i < ctorChain.length; i++ ){
|
for( int i = 0; i < ctorChain.length; i++ ){
|
||||||
|
@ -1091,6 +1089,20 @@ public class CPPVisitor {
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static boolean visitParameterDeclaration( IASTParameterDeclaration parameterDeclaration, CPPBaseVisitorAction action ){
|
||||||
|
if( action.processParameterDeclarations ){
|
||||||
|
switch( action.processParameterDeclaration( parameterDeclaration ) ){
|
||||||
|
case CPPBaseVisitorAction.PROCESS_ABORT : return false;
|
||||||
|
case CPPBaseVisitorAction.PROCESS_SKIP : return true;
|
||||||
|
default : break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if( !visitDeclSpecifier( parameterDeclaration.getDeclSpecifier(), action ) ) return false;
|
||||||
|
if( !visitDeclarator( parameterDeclaration.getDeclarator(), action ) ) return false;
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @param parameter
|
* @param parameter
|
||||||
* @param action
|
* @param action
|
||||||
|
|
Loading…
Add table
Reference in a new issue