Skip to content

Commit a739041

Browse files
Merge remote-tracking branch 'origin/main' into michaelrfairhurst/implement-concurrency7-package
2 parents 9ac5159 + a2ffd4c commit a739041

File tree

509 files changed

+7714
-1594
lines changed

Some content is hidden

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

509 files changed

+7714
-1594
lines changed

.github/workflows/code-scanning-pack-gen.yml

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -68,16 +68,20 @@ jobs:
6868
- name: Determine ref for external help files
6969
id: determine-ref
7070
run: |
71-
if [[ $GITHUB_EVENT_NAME == "pull_request" || $GITHUB_EVENT_NAME == "merge_group" ]]; then
72-
echo "EXTERNAL_HELP_REF=$GITHUB_HEAD_REF" >> "$GITHUB_ENV"
71+
if [[ $GITHUB_EVENT_NAME == "pull_request" ]]; then
72+
EXTERNAL_HELP_REF="${{ github.event.pull_request.base.ref }}"
73+
elif [[ $GITHUB_EVENT_NAME == "merge_group" ]]; then
74+
EXTERNAL_HELP_REF="${{ github.event.merge_group.base_ref }}"
7375
else
74-
echo "EXTERNAL_HELP_REF=$GITHUB_REF" >> "$GITHUB_ENV"
76+
EXTERNAL_HELP_REF="$GITHUB_REF"
7577
fi
78+
echo "EXTERNAL_HELP_REF=$EXTERNAL_HELP_REF" >> "$GITHUB_ENV"
7679
echo "Using ref $EXTERNAL_HELP_REF for external help files."
7780
7881
- name: Checkout external help files
79-
continue-on-error: true
8082
id: checkout-external-help-files
83+
# PRs from forks and dependabot do not have access to an appropriate token for cloning the help files repos
84+
if: ${{ !github.event.pull_request.head.repo.fork && github.actor != 'dependabot[bot]' }}
8185
uses: actions/checkout@v4
8286
with:
8387
ssh-key: ${{ secrets.CODEQL_CODING_STANDARDS_HELP_KEY }}
@@ -86,7 +90,7 @@ jobs:
8690
path: external-help-files
8791

8892
- name: Include external help files
89-
if: steps.checkout-external-help-files.outcome == 'success'
93+
if: ${{ !github.event.pull_request.head.repo.fork && github.actor != 'dependabot[bot]'&& steps.checkout-external-help-files.outcome == 'success' }}
9094
run: |
9195
pushd external-help-files
9296
find . -name '*.md' -exec rsync -av --relative {} "$GITHUB_WORKSPACE" \;

.github/workflows/codeql_unit_tests.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -166,7 +166,7 @@ jobs:
166166
steps:
167167
- name: Check if run-test-suites job failed to complete, if so fail
168168
if: ${{ needs.run-test-suites.result == 'failure' }}
169-
uses: actions/github-script@v3
169+
uses: actions/github-script@v7
170170
with:
171171
script: |
172172
core.setFailed('Test run job failed')

.github/workflows/dispatch-matrix-test-on-comment.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@ jobs:
4040
--json \
4141
-R github/codeql-coding-standards-release-engineering
4242
43-
- uses: actions/github-script@v6
43+
- uses: actions/github-script@v7
4444
if: ${{ github.event.issue.pull_request && contains(github.event.comment.body, '/test-matrix') && steps.check-write-permission.outputs.has-permission }}
4545
with:
4646
script: |

.github/workflows/dispatch-release-performance-check.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@ jobs:
4040
--json \
4141
-R github/codeql-coding-standards-release-engineering
4242
43-
- uses: actions/github-script@v6
43+
- uses: actions/github-script@v7
4444
if: ${{ github.event.issue.pull_request && contains(github.event.comment.body, '/test-performance') && steps.check-write-permission.outputs.has-permission }}
4545
with:
4646
script: |

.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@5e914681df9dc83aa4e4905692ca88beb2f9e91f # v7.0.5
56+
uses: peter-evans/create-pull-request@67ccf781d68cd99b580ae25a5c18a1cc84ffff1f # v7.0.6
5757
with:
5858
title: "Upgrade `github/codeql` dependency to ${{ github.event.inputs.codeql_cli_version }}"
5959
body: |

amendments.csv

Lines changed: 28 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -9,41 +9,42 @@ c,MISRA-C-2012,Amendment3,RULE-10-4,Yes,Refine,No,Import
99
c,MISRA-C-2012,Amendment3,RULE-10-5,Yes,Expand,No,Easy
1010
c,MISRA-C-2012,Amendment3,RULE-10-7,Yes,Refine,No,Import
1111
c,MISRA-C-2012,Amendment3,RULE-10-8,Yes,Refine,No,Import
12-
c,MISRA-C-2012,Amendment3,RULE-21-11,Yes,Clarification,No,Import
12+
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
1414
c,MISRA-C-2012,Amendment4,RULE-11-3,Yes,Expand,No,Easy
1515
c,MISRA-C-2012,Amendment4,RULE-11-8,Yes,Expand,No,Easy
1616
c,MISRA-C-2012,Amendment4,RULE-13-2,Yes,Expand,No,Very Hard
1717
c,MISRA-C-2012,Amendment4,RULE-18-6,Yes,Expand,No,Medium
18-
c,MISRA-C-2012,Amendment4,RULE-18-8,Yes,Split,No,Easy
19-
c,MISRA-C-2012,Corrigendum2,RULE-2-2,Yes,Clarification,No,Import
20-
c,MISRA-C-2012,Corrigendum2,RULE-2-7,Yes,Clarification,No,Import
21-
c,MISRA-C-2012,Corrigendum2,RULE-3-1,Yes,Refine,No,Easy
22-
c,MISRA-C-2012,Corrigendum2,RULE-8-6,Yes,Clarification,No,Import
23-
c,MISRA-C-2012,Corrigendum2,RULE-8-9,Yes,Clarification,No,Import
24-
c,MISRA-C-2012,Corrigendum2,RULE-9-4,Yes,Clarification,No,Import
25-
c,MISRA-C-2012,Corrigendum2,RULE-10-1,Yes,Clarification,No,Import
26-
c,MISRA-C-2012,Corrigendum2,RULE-18-3,Yes,Clarification,No,Import
27-
c,MISRA-C-2012,Corrigendum2,RULE-1-4,Yes,Replace,No,Easy
28-
c,MISRA-C-2012,Corrigendum2,RULE-9-1,Yes,Refine,No,Easy
29-
c,MISRA-C-2012,Corrigendum2,RULE-9-2,Yes,Refine,No,Import
30-
c,MISRA-C-2012,Corrigendum2,DIR-4-10,Yes,Clarification,No,Import
18+
c,MISRA-C-2012,Amendment4,RULE-18-8,Yes,Split,Yes,Easy
19+
c,MISRA-C-2012,Amendment4,RULE-2-2,Yes,Clarification,Yes,Import
20+
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
22+
c,MISRA-C-2012,Amendment4,RULE-8-6,Yes,Clarification,Yes,Import
23+
c,MISRA-C-2012,Amendment4,RULE-8-9,Yes,Clarification,Yes,Import
24+
c,MISRA-C-2012,Amendment4,RULE-9-4,Yes,Clarification,Yes,Import
25+
c,MISRA-C-2012,Amendment4,RULE-10-1,Yes,Clarification,Yes,Import
26+
c,MISRA-C-2012,Amendment4,RULE-18-3,Yes,Clarification,Yes,Import
27+
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
29+
c,MISRA-C-2012,Amendment4,RULE-9-2,Yes,Refine,No,Import
30+
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
32-
c,MISRA-C-2012,Corrigendum2,RULE-8-2,Yes,Clarification,No,Import
32+
c,MISRA-C-2012,Corrigendum2,RULE-8-2,Yes,Clarification,Yes,Import
3333
c,MISRA-C-2012,Corrigendum2,RULE-8-3,Yes,Refine,No,Easy
34-
c,MISRA-C-2012,Corrigendum2,RULE-8-7,Yes,Clarification,No,Import
34+
c,MISRA-C-2012,Corrigendum2,RULE-8-7,Yes,Clarification,Yes,Import
35+
c,MISRA-C-2012,Corrigendum2,RULE-10-1,Yes,Clarification,Yes,Import
3536
c,MISRA-C-2012,Corrigendum2,RULE-10-2,Yes,Refine,No,Easy
36-
c,MISRA-C-2012,Corrigendum2,RULE-10-3,Yes,Clarification,No,Import
37-
c,MISRA-C-2012,Corrigendum2,RULE-11-3,Yes,Clarification,No,Import
38-
c,MISRA-C-2012,Corrigendum2,RULE-11-6,Yes,Clarification,No,Import
39-
c,MISRA-C-2012,Corrigendum2,RULE-13-2,Yes,Clarification,No,Import
40-
c,MISRA-C-2012,Corrigendum2,RULE-13-6,Yes,Clarification,No,Import
37+
c,MISRA-C-2012,Corrigendum2,RULE-10-3,Yes,Clarification,Yes,Import
38+
c,MISRA-C-2012,Corrigendum2,RULE-11-3,Yes,Clarification,Yes,Import
39+
c,MISRA-C-2012,Corrigendum2,RULE-11-6,Yes,Clarification,Yes,Import
40+
c,MISRA-C-2012,Corrigendum2,RULE-13-2,Yes,Clarification,Yes,Import
41+
c,MISRA-C-2012,Corrigendum2,RULE-13-6,Yes,Clarification,Yes,Import
4142
c,MISRA-C-2012,Corrigendum2,RULE-14-3,Yes,Refine,No,Easy
42-
c,MISRA-C-2012,Corrigendum2,RULE-15-7,Yes,Clarification,No,Import
43-
c,MISRA-C-2012,Corrigendum2,RULE-17-4,Yes,Clarification,No,Import
44-
c,MISRA-C-2012,Corrigendum2,RULE-17-5,Yes,Clarification,No,Import
43+
c,MISRA-C-2012,Corrigendum2,RULE-15-7,Yes,Clarification,Yes,Import
44+
c,MISRA-C-2012,Corrigendum2,RULE-17-4,Yes,Clarification,Yes,Import
45+
c,MISRA-C-2012,Corrigendum2,RULE-17-5,Yes,Clarification,Yes,Import
4546
c,MISRA-C-2012,Corrigendum2,RULE-18-1,Yes,Refine,No,Easy
46-
c,MISRA-C-2012,Corrigendum2,RULE-20-14,No,Clarification,No,Import
47-
c,MISRA-C-2012,Corrigendum2,RULE-21-19,Yes,Clarification,No,Import
47+
c,MISRA-C-2012,Corrigendum2,RULE-20-14,No,Clarification,Yes,Import
48+
c,MISRA-C-2012,Corrigendum2,RULE-21-19,Yes,Clarification,Yes,Import
4849
c,MISRA-C-2012,Corrigendum2,RULE-21-20,Yes,Refine,No,Easy
49-
c,MISRA-C-2012,Corrigendum2,RULE-22-9,Yes,Clarification,No,Import
50+
c,MISRA-C-2012,Corrigendum2,RULE-22-9,Yes,Clarification,Yes,Import

c/cert/src/codeql-pack.lock.yml

Lines changed: 13 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -2,17 +2,23 @@
22
lockVersion: 1.0.0
33
dependencies:
44
codeql/cpp-all:
5-
version: 0.12.9
5+
version: 2.1.1
66
codeql/dataflow:
7-
version: 0.2.3
7+
version: 1.1.6
8+
codeql/mad:
9+
version: 1.0.12
810
codeql/rangeanalysis:
9-
version: 0.0.11
11+
version: 1.0.12
1012
codeql/ssa:
11-
version: 0.2.12
13+
version: 1.0.12
1214
codeql/tutorial:
13-
version: 0.2.12
15+
version: 1.0.12
16+
codeql/typeflow:
17+
version: 1.0.12
1418
codeql/typetracking:
15-
version: 0.2.12
19+
version: 1.0.12
1620
codeql/util:
17-
version: 0.2.12
21+
version: 1.0.12
22+
codeql/xml:
23+
version: 1.0.12
1824
compiled: false

c/cert/src/qlpack.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
name: codeql/cert-c-coding-standards
2-
version: 2.38.0-dev
2+
version: 2.42.0-dev
33
description: CERT C 2016
44
suites: codeql-suites
55
license: MIT
66
dependencies:
77
codeql/common-c-coding-standards: '*'
8-
codeql/cpp-all: 0.12.9
8+
codeql/cpp-all: 2.1.1

c/cert/src/rules/ARR37-C/DoNotUsePointerArithmeticOnNonArrayObjectPointers.ql

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@
1313

1414
import cpp
1515
import codingstandards.c.cert
16-
import codingstandards.cpp.dataflow.DataFlow
16+
import semmle.code.cpp.dataflow.DataFlow
1717
import NonArrayPointerToArrayIndexingExprFlow::PathGraph
1818

1919
/**

c/cert/src/rules/ARR39-C/DoNotAddOrSubtractAScaledIntegerToAPointer.ql

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@
1414
import cpp
1515
import codingstandards.c.cert
1616
import codingstandards.cpp.Pointers
17-
import codingstandards.cpp.dataflow.TaintTracking
17+
import semmle.code.cpp.dataflow.TaintTracking
1818
import ScaledIntegerPointerArithmeticFlow::PathGraph
1919

2020
/**

c/cert/src/rules/CON30-C/CleanUpThreadSpecificStorage.ql

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,8 +15,7 @@
1515
import cpp
1616
import codingstandards.c.cert
1717
import codingstandards.cpp.Concurrency
18-
import codingstandards.cpp.dataflow.TaintTracking
19-
import codingstandards.cpp.dataflow.DataFlow
18+
import semmle.code.cpp.dataflow.DataFlow
2019

2120
module TssCreateToTssDeleteConfig implements DataFlow::ConfigSig {
2221
predicate isSource(DataFlow::Node node) {

c/cert/src/rules/CON34-C/AppropriateThreadObjectStorageDurations.ql

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,8 +15,7 @@
1515
import cpp
1616
import codingstandards.c.cert
1717
import codingstandards.cpp.Concurrency
18-
import codingstandards.cpp.dataflow.TaintTracking
19-
import codingstandards.cpp.dataflow.DataFlow
18+
import semmle.code.cpp.dataflow.DataFlow
2019
import semmle.code.cpp.commons.Alloc
2120

2221
from C11ThreadCreateCall tcc, StackVariable sv, Expr arg, Expr acc

c/cert/src/rules/CON34-C/ThreadObjectStorageDurationsNotInitialized.ql

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,8 +16,7 @@
1616
import cpp
1717
import codingstandards.c.cert
1818
import codingstandards.cpp.Concurrency
19-
import codingstandards.cpp.dataflow.TaintTracking
20-
import codingstandards.cpp.dataflow.DataFlow
19+
import semmle.code.cpp.dataflow.DataFlow
2120

2221
from TSSGetFunctionCall tsg, ThreadedFunction tf
2322
where

c/cert/src/rules/CON39-C/ThreadWasPreviouslyJoinedOrDetached.ql

Lines changed: 6 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -14,37 +14,10 @@
1414

1515
import cpp
1616
import codingstandards.c.cert
17-
import codingstandards.cpp.Concurrency
17+
import codingstandards.cpp.rules.joinordetachthreadonlyonce.JoinOrDetachThreadOnlyOnce
1818

19-
// OK
20-
// 1) Thread calls detach parent DOES NOT call join
21-
// 2) Parent calls join, thread does NOT call detach()
22-
// NOT OK
23-
// 1) Thread calls detach, parent calls join
24-
// 2) Thread calls detach twice, parent does not call join
25-
// 3) Parent calls join twice, thread does not call detach
26-
from C11ThreadCreateCall tcc
27-
where
28-
not isExcluded(tcc, Concurrency5Package::threadWasPreviouslyJoinedOrDetachedQuery()) and
29-
// Note: These cases can be simplified but they are presented like this for clarity
30-
// case 1 - calls to `thrd_join` and `thrd_detach` within the parent or
31-
// within the parent / child CFG.
32-
exists(C11ThreadWait tw, C11ThreadDetach dt |
33-
tw = getAThreadContextAwareSuccessor(tcc) and
34-
dt = getAThreadContextAwareSuccessor(tcc)
35-
)
36-
or
37-
// case 2 - multiple calls to `thrd_detach` within the threaded CFG.
38-
exists(C11ThreadDetach dt1, C11ThreadDetach dt2 |
39-
dt1 = getAThreadContextAwareSuccessor(tcc) and
40-
dt2 = getAThreadContextAwareSuccessor(tcc) and
41-
not dt1 = dt2
42-
)
43-
or
44-
// case 3 - multiple calls to `thrd_join` within the threaded CFG.
45-
exists(C11ThreadWait tw1, C11ThreadWait tw2 |
46-
tw1 = getAThreadContextAwareSuccessor(tcc) and
47-
tw2 = getAThreadContextAwareSuccessor(tcc) and
48-
not tw1 = tw2
49-
)
50-
select tcc, "Thread may call join or detach after the thread is joined or detached."
19+
class ThreadWasPreviouslyJoinedOrDetachedQuery extends JoinOrDetachThreadOnlyOnceSharedQuery {
20+
ThreadWasPreviouslyJoinedOrDetachedQuery() {
21+
this = Concurrency5Package::threadWasPreviouslyJoinedOrDetachedQuery()
22+
}
23+
}

c/cert/src/rules/DCL30-C/AppropriateStorageDurationsFunctionReturn.ql

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@
1313

1414
import cpp
1515
import codingstandards.c.cert
16-
import codingstandards.cpp.dataflow.DataFlow
16+
import semmle.code.cpp.dataflow.DataFlow
1717

1818
class Source extends StackVariable {
1919
Source() { not this instanceof Parameter }

c/cert/src/rules/ERR30-C/ErrnoReadBeforeReturn.ql

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@
1414
import cpp
1515
import codingstandards.c.cert
1616
import codingstandards.c.Errno
17+
import semmle.code.cpp.dataflow.DataFlow
1718

1819
/**
1920
* A call to an `OutOfBandErrnoSettingFunction`

c/cert/src/rules/ERR30-C/FunctionCallBeforeErrnoCheck.ql

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,6 @@
1414
import cpp
1515
import codingstandards.c.cert
1616
import codingstandards.c.Errno
17-
import codingstandards.cpp.dataflow.DataFlow
1817

1918
/**
2019
* A call to an `OutOfBandErrnoSettingFunction`

c/cert/src/rules/ERR30-C/SetlocaleMightSetErrno.ql

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@
1313
import cpp
1414
import codingstandards.c.cert
1515
import codingstandards.c.Errno
16+
import semmle.code.cpp.dataflow.DataFlow
1617

1718
class SetlocaleFunctionCall extends FunctionCall {
1819
SetlocaleFunctionCall() { this.getTarget().hasGlobalName("setlocale") }

c/cert/src/rules/ERR32-C/DoNotRelyOnIndeterminateValuesOfErrno.ql

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -20,17 +20,17 @@ import semmle.code.cpp.controlflow.Guards
2020
* A check on `signal` call return value
2121
* `if (signal(SIGINT, handler) == SIG_ERR)`
2222
*/
23-
class SignalCheckOperation extends EqualityOperation, GuardCondition {
23+
class SignalCheckOperation extends EqualityOperation instanceof GuardCondition {
2424
BasicBlock errorSuccessor;
2525

2626
SignalCheckOperation() {
2727
this.getAnOperand() = any(MacroInvocation m | m.getMacroName() = "SIG_ERR").getExpr() and
2828
(
2929
this.getOperator() = "==" and
30-
this.controls(errorSuccessor, true)
30+
super.controls(errorSuccessor, true)
3131
or
3232
this.getOperator() = "!=" and
33-
this.controls(errorSuccessor, false)
33+
super.controls(errorSuccessor, false)
3434
)
3535
}
3636

c/cert/src/rules/EXP30-C/DependenceOnOrderOfFunctionArgumentsForSideEffects.ql

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,8 +14,7 @@
1414
import cpp
1515
import codingstandards.c.cert
1616
import codingstandards.cpp.SideEffect
17-
import codingstandards.cpp.dataflow.DataFlow
18-
import codingstandards.cpp.dataflow.TaintTracking
17+
import semmle.code.cpp.dataflow.TaintTracking
1918
import semmle.code.cpp.valuenumbering.GlobalValueNumbering
2019

2120
/** Holds if the function's return value is derived from the `AliasParamter` p. */

c/cert/src/rules/EXP35-C/DoNotModifyObjectsWithTemporaryLifetime.ql

Lines changed: 1 addition & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -13,18 +13,7 @@
1313

1414
import cpp
1515
import codingstandards.c.cert
16-
17-
/**
18-
* A struct or union type that contains an array type
19-
*/
20-
class StructOrUnionTypeWithArrayField extends Struct {
21-
StructOrUnionTypeWithArrayField() {
22-
this.getAField().getUnspecifiedType() instanceof ArrayType
23-
or
24-
// nested struct or union containing an array type
25-
this.getAField().getUnspecifiedType().(Struct) instanceof StructOrUnionTypeWithArrayField
26-
}
27-
}
16+
import codingstandards.cpp.lifetimes.CLifetimes
2817

2918
// Note: Undefined behavior is possible regardless of whether the accessed field from the returned
3019
// struct is an array or a scalar (i.e. arithmetic and pointer types) member, according to the standard.

c/cert/src/rules/EXP36-C/DoNotCastPointerToMoreStrictlyAlignedPointerType.ql

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@
1414
import cpp
1515
import codingstandards.c.cert
1616
import codingstandards.cpp.Alignment
17-
import codingstandards.cpp.dataflow.DataFlow
17+
import semmle.code.cpp.dataflow.DataFlow
1818
import semmle.code.cpp.rangeanalysis.SimpleRangeAnalysis
1919
import ExprWithAlignmentToCStyleCastFlow::PathGraph
2020

c/cert/src/rules/EXP37-C/DoNotCallFunctionPointerWithIncompatibleType.ql

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@
1313

1414
import cpp
1515
import codingstandards.c.cert
16-
import codingstandards.cpp.dataflow.DataFlow
16+
import semmle.code.cpp.dataflow.DataFlow
1717
import SuspectFunctionPointerToCallFlow::PathGraph
1818

1919
/**

c/cert/src/rules/EXP39-C/DoNotAccessVariableViaPointerOfIncompatibleType.ql

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@
1313

1414
import cpp
1515
import codingstandards.c.cert
16-
import codingstandards.cpp.dataflow.DataFlow
16+
import semmle.code.cpp.dataflow.DataFlow
1717
import semmle.code.cpp.controlflow.Dominance
1818
import IndirectCastFlow::PathGraph
1919

c/cert/src/rules/EXP40-C/DoNotModifyConstantObjects.ql

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@
1212

1313
import cpp
1414
import codingstandards.c.cert
15-
import codingstandards.cpp.dataflow.DataFlow
15+
import semmle.code.cpp.dataflow.DataFlow
1616
import CastFlow::PathGraph
1717
import codingstandards.cpp.SideEffect
1818

0 commit comments

Comments
 (0)