diff options
author | Alena Laskavaia | 2010-06-17 00:20:17 +0000 |
---|---|---|
committer | Alena Laskavaia | 2010-06-17 00:20:17 +0000 |
commit | dbaa2242285261d7c953aea54eaafb3f20b2c229 (patch) | |
tree | 235da18fe93527f66c0f028b56b3c9692a9a54de /codan/org.eclipse.cdt.codan.core.cxx/src | |
parent | d36946d2062e2af471c63a4ad3f206b96cd595c5 (diff) | |
download | org.eclipse.cdt-dbaa2242285261d7c953aea54eaafb3f20b2c229.tar.gz org.eclipse.cdt-dbaa2242285261d7c953aea54eaafb3f20b2c229.tar.xz org.eclipse.cdt-dbaa2242285261d7c953aea54eaafb3f20b2c229.zip |
Bug 316154: support processing of inner functions
Diffstat (limited to 'codan/org.eclipse.cdt.codan.core.cxx/src')
-rw-r--r-- | codan/org.eclipse.cdt.codan.core.cxx/src/org/eclipse/cdt/codan/core/cxx/model/AbstractAstFunctionChecker.java | 18 |
1 files changed, 4 insertions, 14 deletions
diff --git a/codan/org.eclipse.cdt.codan.core.cxx/src/org/eclipse/cdt/codan/core/cxx/model/AbstractAstFunctionChecker.java b/codan/org.eclipse.cdt.codan.core.cxx/src/org/eclipse/cdt/codan/core/cxx/model/AbstractAstFunctionChecker.java index 9941e15d4f1..3c8ee5b24ae 100644 --- a/codan/org.eclipse.cdt.codan.core.cxx/src/org/eclipse/cdt/codan/core/cxx/model/AbstractAstFunctionChecker.java +++ b/codan/org.eclipse.cdt.codan.core.cxx/src/org/eclipse/cdt/codan/core/cxx/model/AbstractAstFunctionChecker.java @@ -12,12 +12,9 @@ package org.eclipse.cdt.codan.core.cxx.model; import org.eclipse.cdt.codan.core.model.ICheckerWithPreferences; import org.eclipse.cdt.core.dom.ast.ASTVisitor; -import org.eclipse.cdt.core.dom.ast.IASTDeclSpecifier; import org.eclipse.cdt.core.dom.ast.IASTDeclaration; import org.eclipse.cdt.core.dom.ast.IASTFunctionDefinition; -import org.eclipse.cdt.core.dom.ast.IASTSimpleDeclaration; import org.eclipse.cdt.core.dom.ast.IASTTranslationUnit; -import org.eclipse.cdt.core.dom.ast.cpp.ICPPASTCompositeTypeSpecifier; /** * Abstract class for checkers that do all the work on function definition level @@ -33,18 +30,11 @@ public abstract class AbstractAstFunctionChecker extends public int visit(IASTDeclaration element) { if (element instanceof IASTFunctionDefinition) { - processFunction((IASTFunctionDefinition) element); - return PROCESS_CONTINUE; // this is to support gcc extension - // for enclosed functions + processFunction((IASTFunctionDefinition) element); } - if (element instanceof IASTSimpleDeclaration) { - IASTDeclSpecifier declSpecifier = ((IASTSimpleDeclaration) element) - .getDeclSpecifier(); - if (declSpecifier instanceof ICPPASTCompositeTypeSpecifier) { - return PROCESS_CONTINUE; // c++ methods - } - } - return PROCESS_SKIP; + // visit all nodes to support inner functions within class definitions + // and gcc extensions + return PROCESS_CONTINUE; } }); } |