Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlena Laskavaia2011-01-18 03:18:53 +0000
committerAlena Laskavaia2011-01-18 03:18:53 +0000
commit08cf5bcb277304d8a394016d74b5dd28b96bd269 (patch)
tree471e036e024d9cbae364afd1083709c311dee423 /codan/org.eclipse.cdt.codan.checkers
parentdb436ae417cf0d309dacd3f08aee37534b8f7422 (diff)
downloadorg.eclipse.cdt-08cf5bcb277304d8a394016d74b5dd28b96bd269.tar.gz
org.eclipse.cdt-08cf5bcb277304d8a394016d74b5dd28b96bd269.tar.xz
org.eclipse.cdt-08cf5bcb277304d8a394016d74b5dd28b96bd269.zip
Bug 332285 - fixed lambda expressions
Diffstat (limited to 'codan/org.eclipse.cdt.codan.checkers')
-rw-r--r--codan/org.eclipse.cdt.codan.checkers/src/org/eclipse/cdt/codan/internal/checkers/ReturnChecker.java10
1 files changed, 10 insertions, 0 deletions
diff --git a/codan/org.eclipse.cdt.codan.checkers/src/org/eclipse/cdt/codan/internal/checkers/ReturnChecker.java b/codan/org.eclipse.cdt.codan.checkers/src/org/eclipse/cdt/codan/internal/checkers/ReturnChecker.java
index 3ebc6131945..2a4d5626a10 100644
--- a/codan/org.eclipse.cdt.codan.checkers/src/org/eclipse/cdt/codan/internal/checkers/ReturnChecker.java
+++ b/codan/org.eclipse.cdt.codan.checkers/src/org/eclipse/cdt/codan/internal/checkers/ReturnChecker.java
@@ -24,6 +24,7 @@ import org.eclipse.cdt.core.dom.ast.ASTVisitor;
import org.eclipse.cdt.core.dom.ast.DOMException;
import org.eclipse.cdt.core.dom.ast.IASTDeclSpecifier;
import org.eclipse.cdt.core.dom.ast.IASTDeclaration;
+import org.eclipse.cdt.core.dom.ast.IASTExpressionStatement;
import org.eclipse.cdt.core.dom.ast.IASTFunctionDeclarator;
import org.eclipse.cdt.core.dom.ast.IASTFunctionDefinition;
import org.eclipse.cdt.core.dom.ast.IASTNamedTypeSpecifier;
@@ -37,6 +38,7 @@ import org.eclipse.cdt.core.dom.ast.c.ICASTSimpleDeclSpecifier;
import org.eclipse.cdt.core.dom.ast.cpp.ICPPASTFunctionDefinition;
import org.eclipse.cdt.core.dom.ast.cpp.ICPPConstructor;
import org.eclipse.cdt.core.dom.ast.cpp.ICPPMethod;
+import org.eclipse.cdt.core.dom.ast.gnu.IGNUASTCompoundStatementExpression;
/**
* The checker suppose to find issue related to mismatched return value/function
@@ -89,6 +91,14 @@ public class ReturnChecker extends AbstractAstFunctionChecker {
return PROCESS_SKIP;
}
+ if (stmt instanceof IASTExpressionStatement) {
+ // do not process expression they may contain nasty stuff
+ IASTExpressionStatement stmt1 = (IASTExpressionStatement) stmt;
+ if (stmt1.getExpression() instanceof IGNUASTCompoundStatementExpression) {
+ return PROCESS_CONTINUE;
+ }
+ return PROCESS_SKIP;
+ }
return PROCESS_CONTINUE;
}
/**

Back to the top