Граф коммитов

11521 Коммитов

Автор SHA1 Сообщение Дата
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