We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
1 parent 738c5b8 commit 5c4e72dCopy full SHA for 5c4e72d
2 files changed
cpp/autosar/src/rules/M8-0-1/MultipleLocalDeclarators.ql
@@ -20,5 +20,7 @@ import codingstandards.cpp.autosar
20
from DeclStmt ds
21
where
22
not isExcluded(ds, InitializationPackage::multipleLocalDeclaratorsQuery()) and
23
- count(ds.getADeclaration()) > 1
+ count(Declaration d | d = ds.getADeclaration()) > 1 and
24
+ // Not a compiler generated `DeclStmt`, such as in the range-based for loop
25
+ not ds.isCompilerGenerated()
26
select ds, "Declaration list contains more than one declaration."
cpp/autosar/test/rules/M8-0-1/test.cpp
@@ -15,3 +15,10 @@ class ClassA {
15
int m1, m2; // NON_COMPLIANT
16
int m3; // COMPLIANT
17
};
18
+
19
+#include <vector>
+void test_loop(std::vector<ClassA> v) {
+ for (const auto b : v) { // COMPLIANT - DeclStmt is compiler generated
+ b;
+ }
+}
0 commit comments