Skip to content

Commit 92379ae

Browse files
committed
A5-0-2: exclude compiler generated conditions
1 parent e1f822a commit 92379ae

File tree

2 files changed

+4
-0
lines changed

2 files changed

+4
-0
lines changed

cpp/common/src/codingstandards/cpp/rules/nonbooleanifstmt/NonBooleanIfStmt.qll

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,8 @@ query predicate problems(Expr condition, string message) {
1414
not isExcluded(condition, getQuery()) and
1515
exists(IfStmt ifStmt, Type explicitConversionType |
1616
condition = ifStmt.getCondition() and
17+
//exclude any generated conditions
18+
not condition.isCompilerGenerated() and
1719
not ifStmt.isFromUninstantiatedTemplate(_) and
1820
explicitConversionType = condition.getExplicitlyConverted().getUnderlyingType() and
1921
not explicitConversionType instanceof BoolType and

cpp/common/src/codingstandards/cpp/rules/nonbooleaniterationstmt/NonBooleanIterationStmt.qll

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,8 @@ query predicate problems(Loop loopStmt, string message) {
1616
condition = loopStmt.getCondition() and
1717
explicitConversionType = condition.getExplicitlyConverted().getType().getUnspecifiedType() and
1818
not explicitConversionType instanceof BoolType and
19+
//exclude any generated conditions
20+
not condition.isCompilerGenerated() and
1921
message = "Iteration condition has non boolean type " + explicitConversionType + "."
2022
)
2123
}

0 commit comments

Comments
 (0)