Mathias Vorreiter Pedersen
77a7e007e3
Merge branch 'main' into fix-more-fps-in-iterator-to-expired-container
2024-04-22 10:42:06 +01:00
Jeroen Ketema
19d0d7bbc0
C++: Fix aliased IR test
2024-04-22 11:08:01 +02:00
Jeroen Ketema
c5bdd5bbd7
Merge pull request #16289 from jketema/reuse-improve
...
C++: Improve handling of re-use expressions
2024-04-22 10:34:35 +02:00
Jeroen Ketema
bcde7151e8
C++: Address review comment
2024-04-22 10:23:03 +02:00
Jeroen Ketema
2c76b13451
C++: Improve handling of re-used qualifier in delete expressions
2024-04-21 16:16:24 +02:00
Mathias Vorreiter Pedersen
bcedf687ff
Merge pull request #16246 from MathiasVP/parameter-nodes-for-functions-without-bodies
...
C++: Add Parameter nodes for functions without bodies
2024-04-19 15:54:38 +01:00
Mathias Vorreiter Pedersen
ba99d49b61
Merge pull request #16187 from MathiasVP/cfg-for-coroutines
...
C++: Placeholder CFG for coroutines
2024-04-19 11:31:55 +01:00
Mathias Vorreiter Pedersen
4aee6d506d
C++: Accept test changes
2024-04-19 09:17:37 +01:00
Mathias Vorreiter Pedersen
cedc84df8f
C++: Fix FPs by only having one dataflow config. This means we preserve the call context all the way though from the source to the sink.
2024-04-19 08:27:41 +01:00
Mathias Vorreiter Pedersen
2b9c96d7cc
C++: Add testcase.
2024-04-19 08:26:50 +01:00
Mathias Vorreiter Pedersen
bcda4a1377
C++: Add change note.
2024-04-18 13:02:56 +01:00
Mathias Vorreiter Pedersen
45b1a5e29b
Merge branch 'main' into fix-tostring-on-nodes
2024-04-18 12:48:25 +01:00
Mathias Vorreiter Pedersen
58832a546a
C++: Accept test changes.
2024-04-18 12:33:27 +01:00
Mathias Vorreiter Pedersen
9f8c9615fc
C++: Use the unconverted expression available for a non-'ExprNode' when one exists.
2024-04-18 12:33:20 +01:00
Mathias Vorreiter Pedersen
b43aae18e0
C++: Accept test changes.
2024-04-18 12:01:01 +01:00
Mathias Vorreiter Pedersen
06f52c2854
C++: Make the new nodes parameter nodes.
2024-04-18 12:01:00 +01:00
Mathias Vorreiter Pedersen
98a3f2da7d
C++: Add new dataflow nodes for parameters without any Instructions associated with them.
2024-04-18 12:01:00 +01:00
Mathias Vorreiter Pedersen
111ad8b525
C++: Refactor parameter nodes into an abstract class that's easier to extend.
2024-04-18 12:01:00 +01:00
Mathias Vorreiter Pedersen
622f69e1a1
Merge pull request #16238 from MathiasVP/fix-terator-to-expired-container-fp
2024-04-18 10:24:13 +01:00
Mathias Vorreiter Pedersen
43df0cd5f4
C++: Add a failing test.
2024-04-17 21:47:32 +01:00
Mathias Vorreiter Pedersen
a1267d732e
Merge pull request #16139 from MathiasVP/enable-sound-ir
...
C++: Enable sound IR
2024-04-17 21:46:51 +01:00
Alexander Eyers-Taylor
da3fa22cbd
Merge pull request #16228 from github/post-release-prep/codeql-cli-2.17.1
...
Post-release preparation for codeql-cli-2.17.1
2024-04-17 11:24:34 +01:00
Mathias Vorreiter Pedersen
592ca06159
C++: Accept test changes.
2024-04-17 10:10:54 +01:00
Mathias Vorreiter Pedersen
96ba3ec88e
C++: Rename predicate.
2024-04-17 10:10:54 +01:00
Mathias Vorreiter Pedersen
eb2790ae63
C++: Fix 'case 2' in 'destroyedToBeginSink' now that we're working with the sink instead of the source.
2024-04-17 10:10:39 +01:00
Mathias Vorreiter Pedersen
d22e2bae8e
C++: Select the post-update node in 'getADestroyedNode'.
2024-04-17 10:10:39 +01:00
Mathias Vorreiter Pedersen
b2974ba1c6
C++: Factor body of `isSink` into its own predicate.
2024-04-17 10:10:21 +01:00
Mathias Vorreiter Pedersen
b201fd0bdd
Merge pull request #16232 from MathiasVP/add-iterator-to-expired-container-fp
...
C++: Add `cpp/iterator-to-expired-container` FP test
2024-04-17 09:44:32 +01:00
Mathias Vorreiter Pedersen
fdddec74d3
Merge branch 'main' into break-bigstep-at-store
2024-04-16 21:08:33 +01:00
Mathias Vorreiter Pedersen
62299dc95a
C++: Add FP test.
2024-04-16 18:19:33 +01:00
Mathias Vorreiter Pedersen
8f82db07d3
Merge pull request #16230 from MathiasVP/fix-join-in-global-use-before-init
...
C++: Use interpolation to avoid a bad join order
2024-04-16 18:17:11 +01:00
Mathias Vorreiter Pedersen
ba9267df5b
Merge branch 'main' into break-bigstep-at-store
2024-04-16 17:15:58 +01:00
Mathias Vorreiter Pedersen
c3cf425079
C++: Use interpolation to avoid a bad join order.
2024-04-16 16:24:08 +01:00
Mathias Vorreiter Pedersen
dd656d34be
Merge branch 'main' into break-bigstep-at-store
2024-04-16 15:33:21 +01:00
Mathias Vorreiter Pedersen
7155af50be
C++: Accept more test changes.
2024-04-16 15:32:24 +01:00
Cornelius Riemenschneider
6ba27dc863
Upgrade rules_pkg to 0.10.1.
2024-04-16 16:29:56 +02:00
github-actions[bot]
622e176a16
Post-release preparation for codeql-cli-2.17.1
2024-04-16 14:21:32 +00:00
Mathias Vorreiter Pedersen
8888ee9fa8
Merge pull request #16149 from codeqlhelper/main
...
C++: Improvements to reduce false alarms
2024-04-16 15:03:31 +01:00
Mathias Vorreiter Pedersen
2627a3dcb7
Merge pull request #15371 from geoffw0/mad
...
C++: Implement models-as-data
2024-04-16 14:33:12 +01:00
Mathias Vorreiter Pedersen
e1884c193b
C++: Add tests (and fix a missing quote in the alert message).
2024-04-16 14:20:19 +01:00
Mathias Vorreiter Pedersen
6cb5db2387
C++: Improve change note comments.
2024-04-16 13:55:55 +01:00
Mathias Vorreiter Pedersen
439afd97ba
C++: Small performance optimization.
2024-04-16 13:54:58 +01:00
Mathias Vorreiter Pedersen
132bb9f1d6
C++: Address (my own) review comments.
2024-04-16 13:53:27 +01:00
Mathias Vorreiter Pedersen
fb9fc14f3d
C++: Accept test changes in paths.
2024-04-16 11:09:22 +01:00
Mathias Vorreiter Pedersen
8630630c45
C++: Use 'asDefinition' instead of checking for a 'Store' instruction.
2024-04-16 11:00:57 +01:00
Mathias Vorreiter Pedersen
54957d6ea4
Merge branch 'main' into enable-sound-ir
2024-04-16 10:46:59 +01:00
github-actions[bot]
9bfe4ea90a
Release preparation for version 2.17.1
2024-04-15 17:34:47 +00:00
Anders Schack-Mulligen
2f0987e980
Dataflow: Add dummy DataFlowSecondLevelScope implementations.
...
These could be an empty type, but Unit was available and it probably
doesn't matter.
2024-04-15 15:16:30 +02:00
Anders Schack-Mulligen
db6d27bd2b
C++: Count return dispatch based on 2nd level scopes.
2024-04-15 15:13:08 +02:00
Anders Schack-Mulligen
9e39be5aea
C++: Update qltest.
2024-04-15 15:13:05 +02:00
Geoffrey White
1c66e26e92
C++: Autoformat.
2024-04-15 09:06:49 +01:00
Mathias Vorreiter Pedersen
f3a5ce5efc
C++: Accept more test changes.
2024-04-13 11:03:15 +01:00
Mathias Vorreiter Pedersen
6f08790065
C++: Accept test changes.
2024-04-13 01:00:48 +01:00
Mathias Vorreiter Pedersen
2cbc59b7a1
C++: Always show the right-hand side of assignment in paths.
2024-04-13 01:00:38 +01:00
Geoffrey White
9302b167d8
C++: Fix further merge conflicts.
2024-04-12 19:38:38 +01:00
Mathias Vorreiter Pedersen
0bed22178c
Merge pull request #16201 from MathiasVP/add-consistency
...
C++: Add new AST consistency check
2024-04-12 17:46:48 +01:00
Geoffrey White
e13b3ed5e7
C++ and Swift: Fix merge conflicts.
2024-04-12 17:30:46 +01:00
Mathias Vorreiter Pedersen
aac1070aca
C++: Consistent naming.
2024-04-12 17:00:46 +01:00
Mathias Vorreiter Pedersen
413d3abbd7
C++: Add new AST consistency check.
2024-04-12 16:57:19 +01:00
Mathias Vorreiter Pedersen
116664588b
Merge pull request #16125 from MathiasVP/destructors-for-unconditional-unnamed
...
C++: Generate IR for destruction of unconditionally constructed temporaries
2024-04-12 16:26:03 +01:00
Geoffrey White
e29ce5f5d5
Merge branch 'main' into mad
2024-04-12 14:30:44 +01:00
Geoffrey White
1df1f0dbc2
C++: Use 'concat' in the variable.ql test.
2024-04-12 14:22:21 +01:00
Geoffrey White
0235e9962e
C++: Accept test changes (related to getAQlClass).
2024-04-12 14:19:37 +01:00
Anders Schack-Mulligen
c355737d30
C++: Update expected output.
2024-04-12 09:20:16 +02:00
Anders Schack-Mulligen
f202661912
C++: Add alert provenance plumbing.
2024-04-12 09:20:06 +02:00
Anders Schack-Mulligen
eafc0075fd
Legacy dataflow: Sync.
2024-04-12 09:19:54 +02:00
Geoffrey White
13100b19bc
C++: Fix unintentionally changing the type of AdditionalCallTarget.viableTarget.
2024-04-11 17:07:20 +01:00
Geoffrey White
66f88d9c71
C++: Restrict the AST cases in TReturnKind.
2024-04-11 16:52:15 +01:00
Mathias Vorreiter Pedersen
477322d21d
C++: Accept test changes.
2024-04-11 15:44:44 +01:00
Mathias Vorreiter Pedersen
846eac8be9
C++: Add a placeholder for 'getOpcode'.
2024-04-11 15:44:33 +01:00
Mathias Vorreiter Pedersen
8842b974f0
C++: Accept test changes.
2024-04-11 15:34:34 +01:00
Mathias Vorreiter Pedersen
65b69fe353
C++: Mark 'CoYieldExpr' as a unary expression in IR construction.
2024-04-11 15:34:29 +01:00
Mathias Vorreiter Pedersen
2a914770ea
C++: Accept test changes.
2024-04-11 15:27:45 +01:00
Mathias Vorreiter Pedersen
d030f0b5d2
C++: Add a placeholder for 'getOpcode'.
2024-04-11 15:27:38 +01:00
Mathias Vorreiter Pedersen
33364a8ab6
C++: Accept test changes.
2024-04-11 14:28:44 +01:00
Mathias Vorreiter Pedersen
d8bd18f369
C++: IR translation of 'co_return' statements.
2024-04-11 14:28:15 +01:00
Mathias Vorreiter Pedersen
3e1359b92e
C++: Accept test changes.
2024-04-11 13:31:48 +01:00
Mathias Vorreiter Pedersen
4c4d2415e9
C++: Mark 'CoAwaitExpr' as a unary expression in IR construction.
2024-04-11 13:30:33 +01:00
Mathias Vorreiter Pedersen
aa94ee5b96
C++: Accept test changes.
2024-04-11 12:27:33 +01:00
Mathias Vorreiter Pedersen
3a18da730e
Merge branch 'main' into add-coroutine-tests
2024-04-11 11:59:07 +01:00
Mathias Vorreiter Pedersen
736d59c42d
Merge branch 'main' into destructors-for-unconditional-unnamed
2024-04-11 09:53:31 +01:00
Mathias Vorreiter Pedersen
5c4e02a1da
Merge branch 'main' into enable-sound-ir
2024-04-10 23:56:16 +01:00
Mathias Vorreiter Pedersen
313501aa29
C++: Delete a noisy test that's not very helpful.
2024-04-10 18:54:50 +01:00
Mathias Vorreiter Pedersen
21bc8c4324
C++: Accept test changes.
2024-04-10 18:32:15 +01:00
Geoffrey White
19b14e166d
C++: Reduce code duplication.
2024-04-10 17:44:55 +01:00
Mathias Vorreiter Pedersen
3d96206783
Merge branch 'main' into enable-sound-ir
2024-04-10 17:39:13 +01:00
Mathias Vorreiter Pedersen
7172e2f445
Merge branch 'main' into destructors-for-unconditional-unnamed
2024-04-10 17:34:08 +01:00
Geoffrey White
959300f963
C++: Fixes for internals that are now private.
2024-04-10 17:32:10 +01:00
Geoffrey White
41ce4ffe4b
C++: Fix some QLDoc holes.
2024-04-10 17:21:48 +01:00
Geoffrey White
eca112c3bc
C++: More autoformatting.
2024-04-10 17:21:05 +01:00
Geoffrey White
dd96095a30
Apply suggestions from code review
...
Co-authored-by: Mathias Vorreiter Pedersen <mathiasvp@github.com>
2024-04-10 17:20:35 +01:00
Mathias Vorreiter Pedersen
33f6b6a940
Merge pull request #16175 from MathiasVP/more-iterator-models
...
C++: Add alias and side-effect models for more iterator functions
2024-04-10 16:55:10 +01:00
Jeroen Ketema
b9b2aa3580
Merge pull request #16138 from jketema/coroutine3
...
C++: Update expected test results
2024-04-10 17:48:48 +02:00
Geoffrey White
925ee825ff
C++: Add change notes.
2024-04-10 15:18:43 +01:00
Mathias Vorreiter Pedersen
0ed0731024
C++: Reduce comment duplication.
2024-04-10 15:04:29 +01:00
Geoffrey White
36db493723
C++: Autoformat.
2024-04-10 15:02:19 +01:00
Geoffrey White
cbab24ba45
C++: Sort Models.qll.
2024-04-10 14:59:13 +01:00
Geoffrey White
e0f866f19d
Merge branch 'main' into mad
2024-04-10 14:58:52 +01:00
Mathias Vorreiter Pedersen
9c9ed13ede
C++: More comments.
2024-04-10 14:57:40 +01:00
Mathias Vorreiter Pedersen
1ae22d0781
C++: Improve comment based on PR feedback.
2024-04-10 14:55:29 +01:00
Mathias Vorreiter Pedersen
a7c98e3d94
C++: Accept test changes.
2024-04-10 14:19:06 +01:00
Mathias Vorreiter Pedersen
d98ed2d3cf
C++: Add alias and side effect models for more iterator functions.
2024-04-10 14:19:06 +01:00
Mathias Vorreiter Pedersen
59936c8642
Merge pull request #16151 from MathiasVP/use-shared-typeflow-lib
...
C++: Use the shared typeflow library
2024-04-10 12:02:03 +01:00
Geoffrey White
138975e4a8
C++: Add ZMQ summary models.
2024-04-09 18:10:15 +01:00
Geoffrey White
783ce48538
C++: Add test cases for ZMQ summary models.
2024-04-09 18:08:56 +01:00
Mathias Vorreiter Pedersen
8a92a4250f
C++: Autoformat.
2024-04-09 17:53:33 +01:00
Mathias Vorreiter Pedersen
a53ef495ee
C++: Simplify 'hasExactBufferType' and add comments.
2024-04-09 16:04:20 +01:00
Mathias Vorreiter Pedersen
291cc0a671
C++: Anonymous namespaces provide internal linkage.
2024-04-09 15:25:13 +01:00
Mathias Vorreiter Pedersen
2a7420ce11
Update cpp/ql/lib/semmle/code/cpp/ir/dataflow/internal/TypeFlow.qll
...
Co-authored-by: Jeroen Ketema <93738568+jketema@users.noreply.github.com>
2024-04-09 15:00:23 +01:00
Geoffrey White
1264e6e292
C++: Fit the function pointer tests better with what is and isn't working.
2024-04-09 14:57:15 +01:00
Jeroen Ketema
46c44b4dc0
C++: Update QLDoc of `IRDeclarationEntry` to reflect current reality
2024-04-09 15:15:41 +02:00
Jeroen Ketema
e821a62b44
C++: Update expected test results
2024-04-09 15:15:41 +02:00
Mathias Vorreiter Pedersen
e9cd2dc9e1
C++: Implement 'lambdaCreation' and 'lambdaCall' for models-as-data.
2024-04-09 14:05:32 +01:00
Geoffrey White
4d5f158652
C++: Pivot ReturnKind solution to derive types from SSA + AST, rather than SSA + MAD.
2024-04-09 13:49:21 +01:00
Geoffrey White
13734d4e62
C++: Improve indirectionForModelledFunction.
2024-04-09 12:06:03 +01:00
Geoffrey White
70bb29581d
C++: Test failures.
2024-04-09 11:53:33 +01:00
Mathias Vorreiter Pedersen
448a9015c0
C++: Compute the number of indirections from MaD using a new predicate.
2024-04-09 10:33:06 +01:00
Mathias Vorreiter Pedersen
21592563cb
C++: Define 'ReturnKind's in terms of SSA instead of 'Function'.
2024-04-09 10:32:31 +01:00
Mathias Vorreiter Pedersen
c325a79206
C++: Ensure 'isConditionalTemporaryDestructorCall' only holds when the reused expression is a temporary.
2024-04-09 09:32:54 +01:00
Mathias Vorreiter Pedersen
17c8fa3e84
Update cpp/ql/lib/semmle/code/cpp/ir/implementation/raw/internal/TranslatedElement.qll
...
Co-authored-by: Jeroen Ketema <93738568+jketema@users.noreply.github.com>
2024-04-09 09:27:44 +01:00
Mathias Vorreiter Pedersen
386580fc94
C++: Accept test changes.
2024-04-08 21:26:12 +01:00
Mathias Vorreiter Pedersen
b2002a981a
C++: Use the shared typeflow library to determine whether a pointer points to a buffer or an object.
2024-04-08 21:25:05 +01:00
Mathias Vorreiter Pedersen
c389611e5c
C++: Add spurious dataflow test.
2024-04-08 21:24:59 +01:00
codeqlhelper@gmail.com
334c0d0449
...
2024-04-09 02:06:06 +08:00
codeqlhelper
fc26e148fd
Create 2024-04-09-reduce-FP.md
2024-04-09 02:00:52 +08:00
Geoffrey White
e3ce7c608b
C++: Fix indirection ambiguity in the test.
2024-04-08 18:27:51 +01:00
Geoffrey White
087d689997
C++: Additional test cases.
2024-04-08 18:18:30 +01:00
codeqlhelper
af2a7eadc3
Reduce false alarms of `InconsistentNullnessTesting.ql`
...
We should ignore `checked` in a macro to avoid too many false alarms,
2024-04-09 00:07:40 +08:00
codeqlhelper
fb15a4ea11
Reduce the false alarms of `GlobalUseBeforeInit.ql`
2024-04-09 00:03:05 +08:00
Geoffrey White
c0c1ab7006
C++: Fix code scanning warnings.
2024-04-08 16:05:55 +01:00
Geoffrey White
06d369ba11
C++: Remove untested PostUpdateNode code for now, and field cases that don't work anyway.
2024-04-08 16:05:18 +01:00
Geoffrey White
b2b2c2016c
C++: Update more QLDoc.
2024-04-08 16:04:23 +01:00
Mathias Vorreiter Pedersen
4fa53b63ae
Merge branch 'main' into destructors-for-unconditional-unnamed
2024-04-08 15:42:35 +01:00
Mathias Vorreiter Pedersen
9c25ce4079
C++: Add testcase with two destructor calls without a temporary object expression at the top-level.
2024-04-08 15:35:33 +01:00
Mathias Vorreiter Pedersen
b581a9ba04
C++: Add example with missing destructor calls on parameters passed by value.
2024-04-08 13:49:05 +01:00
Mathias Vorreiter Pedersen
febd06063a
C++: Add testcase where two destructor calls are remapped to a temporary object expression.
2024-04-08 13:03:51 +01:00
Geoffrey White
ec515f967d
C++: Update QLDoc.
2024-04-08 11:57:35 +01:00
Mathias Vorreiter Pedersen
9917c3c5ba
C++: Add change note.
2024-04-08 10:10:31 +01:00
Mathias Vorreiter Pedersen
fae002fbb7
C++: Accept test changes.
2024-04-08 10:10:31 +01:00
Mathias Vorreiter Pedersen
4831ee65b6
C++: Enable sound IR.
2024-04-08 10:10:31 +01:00
Mathias Vorreiter Pedersen
d40fa4cfba
C++: Accept test changes.
2024-04-07 15:50:16 +01:00
Mathias Vorreiter Pedersen
8a6a60e59b
C++: Also handle destructor calls on converted expressions in PrintAST.
2024-04-07 15:49:50 +01:00
Mathias Vorreiter Pedersen
fcd0e9999c
C++: Accept test changes.
2024-04-07 15:49:27 +01:00
Mathias Vorreiter Pedersen
89eaadd76f
C++: Move destructor calls from expressions with a temporary object conversion to the temporary object conversion.
2024-04-07 15:48:38 +01:00
Mathias Vorreiter Pedersen
a0de95dc44
C++: Add testcases that produces an 'missingOperandType' and 'missingPhiOperand' consistency errors.
2024-04-07 14:26:30 +01:00
Mathias Vorreiter Pedersen
557555eb71
C++: Make Code Scanning happy.
2024-04-05 19:03:03 +01:00
Mathias Vorreiter Pedersen
777755a241
C++: Add alias models for 'fopen'.
2024-04-05 19:02:23 +01:00
Mathias Vorreiter Pedersen
45e71543b4
C++: Accept test changes.
2024-04-05 18:08:25 +01:00
Mathias Vorreiter Pedersen
54e4103e71
C++: Fix another multiple parents problem.
2024-04-05 18:07:53 +01:00
Mathias Vorreiter Pedersen
955f9c735c
C++: Add a failing testcase.
2024-04-05 18:05:30 +01:00
Mathias Vorreiter Pedersen
4c01c06f0c
C++: Accept test changes.
2024-04-05 14:49:22 +01:00
Mathias Vorreiter Pedersen
f1d2dac648
C++: Fix a bug where the destructor attached to a 'new' expression would
...
have multiple parents (the 'new' expression, the call to 'operator new',
and the size expression). This happens because the latter two are
'TranslatedExpr's that return the 'new' expression as their expression
even though they don't technically represent the translation of this
expression.
To prevent this bug we tell the IR construction that the latter two
handle their destructors explicitly which means that IR construction
doesn't try to synthesize them.
2024-04-05 14:46:27 +01:00
Mathias Vorreiter Pedersen
b042366c8e
C++: Add a failing testcase.
2024-04-05 14:41:11 +01:00
Mathias Vorreiter Pedersen
bb2c690bdd
C++: Accept test changes.
2024-04-05 09:49:38 +01:00
Mathias Vorreiter Pedersen
d279e3f17a
C++: Suppress destructor calls for the right-hand side of logical operations since these are also conditional.
2024-04-05 09:47:11 +01:00
Mathias Vorreiter Pedersen
e63a607eb3
C++: Add another test with conditional construction.
2024-04-05 09:41:50 +01:00
erik-krogh
6d3244d01c
update expected outputs with an FP
2024-04-05 09:36:44 +02:00
erik-krogh
3ab73c8552
C++: Improve the cpp/path-injection qhelp
2024-04-05 09:36:39 +02:00
Mathias Vorreiter Pedersen
b6ddb97e40
C++: Accept test changes.
2024-04-04 20:02:02 +01:00
Mathias Vorreiter Pedersen
f098b8eb82
C++: Make sure the edge kind out of a throw is an 'ExceptionEdge' even if destructors are called.
2024-04-04 20:01:52 +01:00
Geoffrey White
bdc3d10cdb
C++: QLDoc SummaryCall, SourceCallable and SummarizedCallable.
2024-04-04 17:13:59 +01:00
Geoffrey White
49ef677b1d
C++: Additional test case for function pointers.
2024-04-04 16:53:29 +01:00
Geoffrey White
144c19db74
C++: Add a test of SummaryCalls, SummarizedCallables and sourceCallables.
2024-04-04 16:50:50 +01:00
Mathias Vorreiter Pedersen
587ae07579
C++: Accept query test changes.
2024-04-04 16:23:41 +01:00
Mathias Vorreiter Pedersen
8f11cb64ec
C++: Accept test changes.
2024-04-04 16:03:06 +01:00
Mathias Vorreiter Pedersen
180888616b
C++: Properly handle the case where a TranslatedElement has no children.
2024-04-04 16:02:01 +01:00
Mathias Vorreiter Pedersen
805b4d6465
C++: Add a failing testcase.
2024-04-04 16:01:25 +01:00
Mathias Vorreiter Pedersen
774efb5f3f
Merge branch 'main' into destructors-for-unconditional-unnamed
2024-04-04 15:04:34 +01:00
Mathias Vorreiter Pedersen
0b7070feec
C++: Accept test changes.
2024-04-04 14:51:16 +01:00
Mathias Vorreiter Pedersen
73602dca92
C++: Also suppress destructor calls on throwing ternary expressions.
2024-04-04 14:51:11 +01:00
Mathias Vorreiter Pedersen
a6a0e20176
C++: Accept test changes.
2024-04-04 14:45:20 +01:00
Mathias Vorreiter Pedersen
796fcfec6c
C++: Handle conversions in 'isInConditionalEvaluation'.
2024-04-04 14:44:16 +01:00
Mathias Vorreiter Pedersen
56a132fa8e
C++: Accept test changes.
2024-04-04 14:41:24 +01:00
Mathias Vorreiter Pedersen
a756f14e77
C++: Only report implicit destructors if we need to translate them.
2024-04-04 14:41:23 +01:00
Mathias Vorreiter Pedersen
d4e2d37311
C++: Add a simple test that fails.
2024-04-04 11:29:25 +01:00
Mathias Vorreiter Pedersen
cf996f8600
C++: Accept test changes.
2024-04-04 11:28:33 +01:00
Robert Marsh
17e8c95e7f
C++: suppress destructors on conditional temporaries
2024-04-04 11:28:10 +01:00
Mathias Vorreiter Pedersen
894d934de8
C++: Accept test changes.
2024-04-04 11:28:01 +01:00
Jeroen Ketema
a8f27af6d8
Merge pull request #16119 from jketema/coroutine2
...
C++: Add more missing variable declaration tests
2024-04-04 11:35:52 +02:00
Robert Marsh
75c453fd30
C++: Unsuppress temporary destructors in IR
2024-04-04 10:29:59 +01:00
Jeroen Ketema
70491c4a8d
C++: Add more missing variable declaration tests
2024-04-04 10:54:09 +02:00
Geoffrey White
a8742ea111
C++: PascalCase and US spelling fixes.
2024-04-03 14:17:55 +01:00
Tom Hvitved
1dc13cc169
Merge pull request #15923 from hvitved/shared-xml-impl
...
Properly shared `XML.qll` implementation
2024-04-03 11:39:50 +02:00
Mathias Vorreiter Pedersen
4baa9ad8c8
C++: Accept test changes.
2024-04-02 18:02:43 +01:00
Mathias Vorreiter Pedersen
baa508d336
C++: Add some simple coroutine tests.
2024-04-02 18:02:43 +01:00
Geoffrey White
db60360293
C++: Add a test case where a function has a MAD model *and* an implementation.
2024-04-02 17:50:00 +01:00
Geoffrey White
f2ef4ad6ac
C++: Update for the provenance changes.
2024-04-02 16:15:08 +01:00
Geoffrey White
57beb73bf7
C++: Update for the dataflow hasLocationInfo -> getLocation change made on main.
2024-04-02 16:15:06 +01:00
Geoffrey White
f1ead2554f
C++: Trivial merge fixes.
2024-04-02 16:15:05 +01:00
Geoffrey White
33164c8a43
Merge branch 'main' into mad
2024-04-02 16:14:53 +01:00
Mathias Vorreiter Pedersen
0bf742b82d
Merge pull request #16089 from MathiasVP/fix-double-free-join
...
C++: Fix join order in 'cpp/double-free'.
2024-04-02 14:15:51 +01:00
Jeroen Ketema
3c8c45872e
Merge pull request #16060 from jketema/qual-fix
...
C++: Output destructor calls for delete expressions
2024-04-02 11:49:51 +02:00
Mathias Vorreiter Pedersen
352e7de07d
C++: Accept test changes.
2024-04-02 10:43:10 +01:00
Jeroen Ketema
01183800a6
C++: Fix formatting
2024-04-02 11:38:19 +02:00
Jeroen Ketema
9190bf25ce
C++: Add example to QLDoc
2024-04-02 11:35:43 +02:00
Mathias Vorreiter Pedersen
bd0ddec630
C++: Fix join order in 'cpp/double-free'.
2024-04-02 09:59:53 +01:00
Jeroen Ketema
a5d4fad806
C++: Output destructor calls for delete expressions
2024-04-02 10:32:03 +02:00
github-actions[bot]
8e61c6625b
Post-release preparation for codeql-cli-2.17.0
2024-04-01 15:27:42 +00:00
github-actions[bot]
ec97d9a304
Release preparation for version 2.17.0
2024-04-01 13:46:57 +00:00
Geoffrey White
fa26b55452
C++: Add models-as-data models for ZMQ networking library + wiring.
2024-03-28 21:50:07 +00:00
Geoffrey White
16f9ad06ef
C++: Add a test for ZMQ network library sources as well.
2024-03-28 21:50:07 +00:00
Geoffrey White
891f05c5ae
C++: Add a test for simple sinks involving ZMQ networking library.
2024-03-28 21:50:07 +00:00
Geoffrey White
5618001c3f
C++: More QLDoc refinement.
2024-03-28 21:50:07 +00:00
Geoffrey White
03d0d984e3
C++: Remove duplicate TDataFlowCallable's and fix three places where we assumed a source callable (two of them would have caused lost results).
2024-03-28 11:39:43 +00:00
Geoffrey White
a55f07ac68
C++: QLDoc FlowSummaryNode.
2024-03-28 10:17:39 +00:00
Jeroen Ketema
9eb51a9b9e
C++: Add value category column to the expr_reuse relation
2024-03-27 22:49:40 +01:00
Geoffrey White
103932fec8
C++: Resolve discussed TODO comment.
2024-03-27 16:44:50 +00:00
Geoffrey White
507ada1951
C++: Sort out the localFlow / simpleLocalFlow confusion (and the same for taint).
2024-03-27 16:05:35 +00:00
Mathias Vorreiter Pedersen
7bb2b57394
Merge pull request #15964 from rdmarsh2/rdmarsh2/cpp/temp-destructors-extended
...
C++: IR translation for destruction of temporaries with extended lifetimes
2024-03-27 11:58:48 +00:00
Jeroen Ketema
050682c477
C++: Update expected test results
2024-03-27 12:03:37 +01:00
Jeroen Ketema
27c6e2421c
C++: Add `VariableTemplateInstantiation` class
...
This adds some uniformity, as we already had `FunctionTemplateInstantiation` and
`ClassTemplateInstantiation` classes.
2024-03-27 11:35:13 +01:00
Mathias Vorreiter Pedersen
3bfaab9182
C++: Remove debugging conjunct.
2024-03-26 17:01:06 +00:00
Mathias Vorreiter Pedersen
6a8c592900
Update cpp/ql/lib/semmle/code/cpp/ir/dataflow/FlowSteps.qll
...
Co-authored-by: Geoffrey White <40627776+geoffw0@users.noreply.github.com>
2024-03-26 16:59:18 +00:00
Mathias Vorreiter Pedersen
d610d721a4
C++: Add file QLDoc.
2024-03-26 16:47:39 +00:00
Mathias Vorreiter Pedersen
e3744c435a
C++: Add change note.
2024-03-26 16:44:16 +00:00
Mathias Vorreiter Pedersen
ec3d041c8d
C++: Accept test changes.
2024-03-26 16:40:18 +00:00
Mathias Vorreiter Pedersen
bd2ecd3346
C++: Add test.
2024-03-26 16:38:28 +00:00
Mathias Vorreiter Pedersen
2075716df7
C++: Add 'TaintInheritingContent'.
2024-03-26 16:37:22 +00:00
Henry Mercer
0646744928
Merge branch 'main' into henrymercer/merge-back-rc-3.13
2024-03-26 12:59:12 +00:00
Geoffrey White
8fbbc2b6d8
C++: Improve QLDoc.
2024-03-26 11:21:25 +00:00
Geoffrey White
ce52cbb428
C++: Disambiguate *n1..n2 doc.
2024-03-25 18:22:28 +00:00
github-actions[bot]
f67b5f9158
Post-release preparation for codeql-cli-2.16.6
2024-03-25 18:17:15 +00:00
Geoffrey White
76780d74d9
C++: Unify four implementations of repeatStars. Note that the recursive approach is faster for very large strings (well over 100 stars), while the concat approach appears to be faster for short strings and does not require an upper bound.
2024-03-25 18:10:21 +00:00
Geoffrey White
95db7aa776
C++: Clean up argument / parameter position logic.
2024-03-25 18:10:21 +00:00
Geoffrey White
58737b1d7e
C++: We *could* support .Argument with no index, but I'm not convinced we can do so efficiently, so lets not.
2024-03-25 17:08:15 +00:00
Geoffrey White
0a33a6e79b
C++: Another test case - Arguments with no specified index.
2024-03-25 17:00:46 +00:00
github-actions[bot]
71ab804274
Release preparation for version 2.16.6
2024-03-25 16:58:08 +00:00
Geoffrey White
cf35fd4dee
C++: Improve ExternalFlow.qll doc.
2024-03-25 16:52:09 +00:00
Geoffrey White
cdafb26423
C++: Fix test failures.
2024-03-25 16:51:36 +00:00
Geoffrey White
88ea9197d9
C++: Add more tests for uncommon cases.
2024-03-25 11:40:15 +00:00
Geoffrey White
46b8e3be66
C++: Fix another mistake in the test.
2024-03-25 11:20:55 +00:00
Geoffrey White
dec5fc0f48
C++: Switch MAD syntax from *Argument[0] style to Argument[*0] style.
2024-03-25 11:20:55 +00:00
Geoffrey White
40270e1f70
C++: Fix mistake in test model.
2024-03-25 11:20:55 +00:00
Geoffrey White
b598b4ac45
C++: Fix for field content indirection (1-based).
2024-03-25 11:20:55 +00:00
Geoffrey White
73e95d67b9
C++: Implement Field indirection.
2024-03-25 11:20:55 +00:00
Geoffrey White
393bd7277c
C++: Add some negative test cases for indirection.
2024-03-25 11:20:55 +00:00
Geoffrey White
af4320df50
C++: Modify a summary test case to only test the summary model, not a source model as well.
2024-03-25 11:20:55 +00:00
Geoffrey White
14deb06e80
C++: Implement Argument + Parameter indirection.
2024-03-25 11:20:55 +00:00
Geoffrey White
638bfff09d
C++: Implement ReturnValue indirection (this version only worked with a small change to the shared library parsing to permit '*' in the token name; we no longer need this, so I rebased it out).
2024-03-25 11:20:09 +00:00
Jeroen Ketema
d9b0a5918c
Merge pull request #16018 from jketema/tls-precision
...
C++: Add precision to `cpp/boost/tls-settings-misconfiguration` and `cpp/boost/use-of-deprecated-hardcoded-security-protocol`
2024-03-22 16:17:34 +01:00
Jeroen Ketema
453cdfa513
C++: Add change note
2024-03-22 15:52:52 +01:00
Jeroen Ketema
adfb3c3d50
C++: Simplify `cpp/boost/tls-settings-misconfiguration`
2024-03-22 11:22:11 +01:00
Jeroen Ketema
a770bddff0
C++: Add precision to `cpp/boost/tls-settings-misconfiguration` and `cpp/boost/use-of-deprecated-hardcoded-security-protocol`
...
Also clean up the names of the queries while here.
2024-03-22 10:48:18 +01:00
Jeroen Ketema
3f0ce98ccb
C++: Add destructor test cases for AV Rule 114
2024-03-22 10:25:47 +01:00
Jeroen Ketema
eca6c00003
Merge pull request #16014 from jketema/destructors20
...
C++: Handle destructors of range-based for-loop, if, and switch initializer statements
2024-03-21 21:04:23 +01:00
Arthur Baars
c219b1a3c7
Merge pull request #16013 from github/rc/3.13
...
Merge rc/3.13 into main
2024-03-21 16:04:58 +01:00
Jeroen Ketema
98de4e209b
C++: Handle destructors of if and switch initializer statements
2024-03-21 15:47:11 +01:00
Jeroen Ketema
9cc287dff1
C++: Handle destructors of range-based for-loop initializer statements
2024-03-21 15:47:11 +01:00
Henry Mercer
4e3a6e2140
Merge pull request #15874 from github/henrymercer/mark-loc-as-telemetry
...
Show lines of code data in debug mode only
2024-03-21 12:20:09 +00:00
Jeroen Ketema
4c4ebd907e
C++: Update more expected test results
2024-03-21 11:54:29 +01:00