Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlena Laskavaia2010-06-17 00:20:17 +0000
committerAlena Laskavaia2010-06-17 00:20:17 +0000
commitdbaa2242285261d7c953aea54eaafb3f20b2c229 (patch)
tree235da18fe93527f66c0f028b56b3c9692a9a54de /codan/org.eclipse.cdt.codan.core.cxx/src
parentd36946d2062e2af471c63a4ad3f206b96cd595c5 (diff)
downloadorg.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.java18
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;
}
});
}

Back to the top