Skip to content

Commit 57b4292

Browse files
committedFeb 9, 2025·
Revert deletion of stdatomic, threads, as emergent lanugage features
1 parent a6ee98a commit 57b4292

File tree

2 files changed

+19
-1
lines changed

2 files changed

+19
-1
lines changed
 

‎amendments.csv

+1-1
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ c,MISRA-C-2012,Amendment4,RULE-8-9,Yes,Clarification,Yes,Import
2424
c,MISRA-C-2012,Amendment4,RULE-9-4,Yes,Clarification,Yes,Import
2525
c,MISRA-C-2012,Amendment4,RULE-10-1,Yes,Clarification,Yes,Import
2626
c,MISRA-C-2012,Amendment4,RULE-18-3,Yes,Clarification,Yes,Import
27-
c,MISRA-C-2012,Amendment4,RULE-1-4,Yes,Replace,Yes,Easy
27+
c,MISRA-C-2012,Amendment4,RULE-1-4,Yes,Replace,No,Easy
2828
c,MISRA-C-2012,Amendment4,RULE-9-1,Yes,Refine,No,Easy
2929
c,MISRA-C-2012,Amendment4,RULE-9-2,Yes,Refine,No,Import
3030
c,MISRA-C-2012,Corrigendum2,DIR-4-10,Yes,Clarification,Yes,Import

‎cpp/common/src/codingstandards/cpp/Emergent.qll

+18
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,24 @@ import cpp
66
module C11 {
77
abstract class EmergentLanguageFeature extends Element { }
88

9+
class AtomicVariableSpecifier extends EmergentLanguageFeature, Variable {
10+
AtomicVariableSpecifier() {
11+
getType().(DerivedType).getBaseType*().getASpecifier().getName() = "atomic"
12+
}
13+
}
14+
15+
class AtomicDeclaration extends EmergentLanguageFeature, Declaration {
16+
AtomicDeclaration() { getASpecifier().getName() = "atomic" }
17+
}
18+
19+
class ThreadLocalDeclaration extends EmergentLanguageFeature, Declaration {
20+
ThreadLocalDeclaration() { getASpecifier().getName() = "is_thread_local" }
21+
}
22+
23+
class EmergentHeader extends EmergentLanguageFeature, Include {
24+
EmergentHeader() { getIncludedFile().getBaseName() = ["stdatomic.h", "threads.h"] }
25+
}
26+
927
class LibExt1Macro extends EmergentLanguageFeature, Macro {
1028
LibExt1Macro() {
1129
getName() = "__STDC_WANT_LIB_EXT1__" and

0 commit comments

Comments
 (0)
Please sign in to comment.