Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit98944ee

Browse files
authored
Merge branch 'main' into lcartey/2.19.4-perf-improvements
2 parents63b8e77 +6bcfc49 commit98944ee

File tree

74 files changed

+1149
-240
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

74 files changed

+1149
-240
lines changed

‎.github/workflows/upgrade_codeql_dependencies.yml‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,7 @@ jobs:
5353
find c \( -name '*.ql' -or -name '*.qll' \) -print0 | xargs -0 --max-procs "$XARGS_MAX_PROCS" codeql query format --in-place
5454
5555
-name:Create Pull Request
56-
uses:peter-evans/create-pull-request@67ccf781d68cd99b580ae25a5c18a1cc84ffff1f# v7.0.6
56+
uses:peter-evans/create-pull-request@271a8d0340265f705b14b6d32b9829c1cb33d45e# v7.0.8
5757
with:
5858
title:"Upgrade `github/codeql` dependency to ${{ github.event.inputs.codeql_cli_version }}"
5959
body:|

‎amendments.csv‎

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -11,21 +11,21 @@ c,MISRA-C-2012,Amendment3,RULE-10-7,Yes,Refine,Yes,Import
1111
c,MISRA-C-2012,Amendment3,RULE-10-8,Yes,Refine,Yes,Import
1212
c,MISRA-C-2012,Amendment3,RULE-21-11,Yes,Clarification,Yes,Import
1313
c,MISRA-C-2012,Amendment3,RULE-21-12,Yes,Replace,No,Easy
14-
c,MISRA-C-2012,Amendment4,RULE-11-3,Yes,Expand,No,Easy
15-
c,MISRA-C-2012,Amendment4,RULE-11-8,Yes,Expand,No,Easy
16-
c,MISRA-C-2012,Amendment4,RULE-13-2,Yes,Expand,No,Very Hard
14+
c,MISRA-C-2012,Amendment4,RULE-11-3,Yes,Expand,Yes,Easy
15+
c,MISRA-C-2012,Amendment4,RULE-11-8,Yes,Expand,Yes,Easy
16+
c,MISRA-C-2012,Amendment4,RULE-13-2,Yes,Expand,Yes,Very Hard
1717
c,MISRA-C-2012,Amendment4,RULE-18-6,Yes,Expand,No,Medium
1818
c,MISRA-C-2012,Amendment4,RULE-18-8,Yes,Split,Yes,Easy
1919
c,MISRA-C-2012,Amendment4,RULE-2-2,Yes,Clarification,Yes,Import
2020
c,MISRA-C-2012,Amendment4,RULE-2-7,Yes,Clarification,Yes,Import
21-
c,MISRA-C-2012,Amendment4,RULE-3-1,Yes,Refine,No,Easy
21+
c,MISRA-C-2012,Amendment4,RULE-3-1,Yes,Refine,Yes,Easy
2222
c,MISRA-C-2012,Amendment4,RULE-8-6,Yes,Clarification,Yes,Import
2323
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
2727
c,MISRA-C-2012,Amendment4,RULE-1-4,Yes,Replace,No,Easy
28-
c,MISRA-C-2012,Amendment4,RULE-9-1,Yes,Refine,No,Easy
28+
c,MISRA-C-2012,Amendment4,RULE-9-1,Yes,Refine,Yes,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
3131
c,MISRA-C-2012,Corrigendum2,RULE-7-4,Yes,Refine,No,Easy

‎c/cert/src/qlpack.yml‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
name:codeql/cert-c-coding-standards
2-
version:2.42.0-dev
2+
version:2.43.0-dev
33
description:CERT C 2016
44
suites:codeql-suites
55
license:MIT

‎c/cert/test/qlpack.yml‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
name:codeql/cert-c-coding-standards-tests
2-
version:2.42.0-dev
2+
version:2.43.0-dev
33
extractor:cpp
44
license:MIT
55
dependencies:

‎c/common/src/qlpack.yml‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
name:codeql/common-c-coding-standards
2-
version:2.42.0-dev
2+
version:2.43.0-dev
33
license:MIT
44
dependencies:
55
codeql/common-cpp-coding-standards:'*'

‎c/common/test/qlpack.yml‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
name:codeql/common-c-coding-standards-tests
2-
version:2.42.0-dev
2+
version:2.43.0-dev
33
extractor:cpp
44
license:MIT
55
dependencies:

‎c/common/test/rules/readofuninitializedmemory/test.c‎

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -94,4 +94,6 @@ void test_non_default_init() {
9494
staticstructAss;
9595
use_struct_A(
9696
ss);// COMPLIANT - static struct type variables are zero initialized
97+
_Atomicintx;
98+
use_int(x);// COMPLIANT - atomics are special, covered by other rules
9799
}

‎c/misra/src/qlpack.yml‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
name:codeql/misra-c-coding-standards
2-
version:2.42.0-dev
2+
version:2.43.0-dev
33
description:MISRA C 2012
44
suites:codeql-suites
55
license:MIT
Lines changed: 55 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,55 @@
1+
/**
2+
* @id c/misra/atomic-qualifier-applied-to-void
3+
* @name RULE-11-10: The _Atomic qualifier shall not be applied to the incomplete type void
4+
* @description Conversions between types by using an _Atomic void type may result in undefined
5+
* behavior.
6+
* @kind problem
7+
* @precision very-high
8+
* @problem.severity error
9+
* @tags external/misra/id/rule-11-10
10+
* correctness
11+
* external/misra/c/2012/third-edition-first-revision
12+
* external/misra/c/2012/amendment4
13+
* external/misra/obligation/required
14+
*/
15+
16+
import cpp
17+
import codingstandards.c.misra
18+
19+
classAtomicVoidTypeextendsType{
20+
AtomicVoidType(){
21+
hasSpecifier("atomic")and
22+
getUnspecifiedType()instanceofVoidType
23+
}
24+
}
25+
26+
predicateusesAtomicVoid(Typeroot){
27+
rootinstanceofAtomicVoidType
28+
or
29+
usesAtomicVoid(root.(DerivedType).getBaseType())
30+
or
31+
usesAtomicVoid(root.(RoutineType).getReturnType())
32+
or
33+
usesAtomicVoid(root.(RoutineType).getAParameterType())
34+
or
35+
usesAtomicVoid(root.(FunctionPointerType).getReturnType())
36+
or
37+
usesAtomicVoid(root.(FunctionPointerType).getAParameterType())
38+
or
39+
usesAtomicVoid(root.(TypedefType).getBaseType())
40+
}
41+
42+
classExplicitTypeextendsType{
43+
ElementgetDeclaration(stringdescription){
44+
result.(DeclarationEntry).getType()=thisanddescription=result.(DeclarationEntry).getName()
45+
or
46+
result.(CStyleCast).getType()=thisanddescription="Cast"
47+
}
48+
}
49+
50+
fromElementdecl,ExplicitTypeexplicitType,stringelementDescription
51+
where
52+
notisExcluded(decl, Declarations9Package::atomicQualifierAppliedToVoidQuery())and
53+
decl=explicitType.getDeclaration(elementDescription)and
54+
usesAtomicVoid(explicitType)
55+
selectdecl,elementDescription+" declared with an atomic void type."

‎c/misra/src/rules/RULE-11-3/CastBetweenObjectPointerAndDifferentObjectType.ql‎

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,11 @@ where
2323
baseTypeFrom=cast.getExpr().getType().(PointerToObjectType).getBaseType()and
2424
baseTypeTo=cast.getType().(PointerToObjectType).getBaseType()and
2525
// exception: cast to a char, signed char, or unsigned char is permitted
26-
notbaseTypeTo.stripType()instanceofCharTypeand
26+
not(
27+
baseTypeTo.stripType()instanceofCharTypeand
28+
// Exception does not apply to _Atomic types
29+
notbaseTypeFrom.hasSpecifier("atomic")
30+
)and
2731
(
2832
(
2933
baseTypeFrom.isVolatile()andnotbaseTypeTo.isVolatile()

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp