Jeroen Ketema
84646cd795
C++: Add tests showing missing destructors for initialization statements
...
Incidentially this also shows that for contructs like `if (char x = ...)`, so
there is an initialization but not initializer statement, the initialization
is not displayed in the AST, although the IR does contain the initialization.
2024-03-21 09:40:00 +01:00
Jeroen Ketema
ec071cde51
Merge pull request #15991 from jketema/destructors17
...
C++: Handle destruction of temporaries in expressions with a `thow` at the root
2024-03-21 07:47:09 +01:00
Jeroen Ketema
9300b04def
C++: Update test results
2024-03-21 00:05:30 +01:00
Henry Mercer
a76832f4e0
Mark LOC queries as debug instead
2024-03-20 21:18:55 +00:00
Mathias Vorreiter Pedersen
0ef8c7d87f
C++: Accept test changes.
2024-03-20 18:05:14 +00:00
Mathias Vorreiter Pedersen
1330c885c8
C++: Use 'asIndirectExpr' in the sink of 'ExistsAnyFlowConfig.
2024-03-20 18:04:59 +00:00
Mathias Vorreiter Pedersen
f31bb1391d
C++: Simplify 'checkedForEof'.
2024-03-20 16:59:39 +00:00
Mathias Vorreiter Pedersen
5476f42d2c
C++: Simplify use of 'GuardCondition's in 'cpp/missing-check-scanf'.
2024-03-20 16:44:43 +00:00
Mathias Vorreiter Pedersen
96cd259eda
C++: Add change note.
2024-03-20 14:56:39 +00:00
Mathias Vorreiter Pedersen
14aff5c94c
C++: Convert 'cpp/missing-check-scanf' to a path-problem query.
2024-03-20 14:54:53 +00:00
Mathias Vorreiter Pedersen
0fe3072a65
Merge pull request #15988 from MathiasVP/clean-up-missing-check-scanf
...
C++: Rewrite 'cpp/missing-check-scanf' to use standard dataflow configs
2024-03-20 14:50:08 +00:00
Jeroen Ketema
1fd11928eb
Merge pull request #15978 from jketema/destructors16
...
C++: Handle destructors at temporary object lifetime expressions
2024-03-20 14:24:10 +01:00
Mathias Vorreiter Pedersen
c9dbb7c5a9
C++: Rewrite 'cpp/missing-check-scanf' to use standard dataflow configurations.
2024-03-20 12:01:57 +00:00
Mathias Vorreiter Pedersen
7ff2998c88
Merge pull request #15980 from MathiasVP/guards-lt
...
C++: Support `<` reasoning for `switch` statements in Guards library
2024-03-20 10:40:39 +00:00
Mathias Vorreiter Pedersen
3a7b80da47
C++: Respond to review comments.
2024-03-20 10:12:29 +00:00
Mathias Vorreiter Pedersen
9179f0bda6
Merge pull request #15969 from MathiasVP/disable-some-constant-folding
...
C++: Disable _some_ constant folding in IR
2024-03-20 09:25:06 +00:00
Jeroen Ketema
3ee965f2b9
C++: Update test results
2024-03-20 10:05:35 +01:00
Mathias Vorreiter Pedersen
97aa301ac9
C++: Accept more test changes.
2024-03-19 17:33:23 +00:00
Mathias Vorreiter Pedersen
88bfb81b1f
C++: Add change note.
2024-03-19 17:14:07 +00:00
Mathias Vorreiter Pedersen
1411ee5b26
C++: Extend tests to also test the new predicates and accept test changes.
2024-03-19 17:09:22 +00:00
Mathias Vorreiter Pedersen
a78080cc0e
C++: Implement less-than logic for guard conditions when comparing to constants.
2024-03-19 17:06:26 +00:00
Mathias Vorreiter Pedersen
8b85735cdc
C++: Generalize predicates from booleans to abstract values.
2024-03-19 17:03:59 +00:00
Dave Bartolomeo
bf46fa27d6
Merge remote-tracking branch 'origin/main' into dbartol/rc3.13-mergeback
2024-03-19 13:02:15 -04:00
Mathias Vorreiter Pedersen
aeb667c6ca
Merge pull request #15976 from MathiasVP/guards-eq-follow-up
...
C++: Fix interface for `GuardCondition.comparesEq` and `GuardCondition.ensuresEq`
2024-03-19 16:45:38 +00:00
Mathias Vorreiter Pedersen
6bf1611f10
C++: Fix comments.
2024-03-19 16:26:37 +00:00
Mathias Vorreiter Pedersen
357a2ba733
C++: Sync identical files.
2024-03-19 16:24:11 +00:00
Mathias Vorreiter Pedersen
458ee13345
C++: Add constant analysis for bitwise operations now that these are no longer constant folded by IR construction.
2024-03-19 16:23:57 +00:00
Robert Marsh
467f4e11a1
C++: Change note for IR translation of destruction of temporaries with extended lifetimes
2024-03-19 15:55:36 +00:00
Robert Marsh
5a30ad162a
C++: Add a comment for ReusedExpr IR translation
2024-03-19 15:54:52 +00:00
Robert Marsh
3d4f7d880d
C++: unsuppress destructoion of temporaries with extended lifetimes
2024-03-19 15:54:42 +00:00
Robert Marsh
ba10ea8121
C++: ReuseExpr IR translation
2024-03-19 15:50:28 +00:00
Jeroen Ketema
f5fed84bb2
Merge pull request #15968 from jketema/destructors15
...
C++: Fabricate destructors for temporaries that occur in dynamic initializations
2024-03-19 16:16:43 +01:00
Mathias Vorreiter Pedersen
c640bd67e9
C++: Fix tests for guards.
2024-03-19 14:43:16 +00:00
Mathias Vorreiter Pedersen
6ce3f35ef5
C++: Fix API for guards.
2024-03-19 14:43:10 +00:00
Dave Bartolomeo
311ba8ea1b
Merge from main to resolve conflicts
2024-03-19 10:41:31 -04:00
Mathias Vorreiter Pedersen
597f0082e7
Merge pull request #15958 from MathiasVP/ir-guards-from-switch-statements-2
...
C++: Implement guards logic for switch statements
2024-03-19 13:21:45 +00:00
Mathias Vorreiter Pedersen
54262a53c3
Revert "C++: Accept test changes."
...
This reverts commit f36b48346e .
2024-03-19 13:18:01 +00:00
Mathias Vorreiter Pedersen
a88d8b260d
C++: Only ignore constant folding for certain binary operations.
2024-03-19 13:17:49 +00:00
Mathias Vorreiter Pedersen
a97891cbc1
C++: Add QLDoc to 'getNumberOfBinaryOperands' (and rename it to 'getNumberOfNestedBinaryOperands').
2024-03-19 12:56:15 +00:00
Mathias Vorreiter Pedersen
f36b48346e
C++: Accept test changes.
2024-03-19 12:50:43 +00:00
Tom Hvitved
754b491d09
C++: Switch to shared XML.qll implementation
2024-03-19 13:14:42 +01:00
Mathias Vorreiter Pedersen
1af1ba48a9
C++: Accept test changes.
2024-03-19 11:46:51 +00:00
Mathias Vorreiter Pedersen
4d3076ae7e
C++: Don't constant fold small binary operations.
2024-03-19 11:46:51 +00:00
Mathias Vorreiter Pedersen
e16e1c7e83
C++: Add tests.
2024-03-19 11:26:32 +00:00
Jeroen Ketema
06dbb4e9ef
Merge pull request #15937 from jketema/destructors14
...
C++: Handle destructors of temporaries with extended lifetimes
2024-03-19 12:07:05 +01:00
Mathias Vorreiter Pedersen
d7afd7b2e1
C++: Accept test changes.
2024-03-19 10:54:35 +00:00
Mathias Vorreiter Pedersen
350b239ed6
C++: Fix cartesian product in 'simple_comparison_eq'.
2024-03-19 10:29:43 +00:00
Jeroen Ketema
d47e2690b8
C++: Update test results after extractor changes
2024-03-19 11:18:36 +01:00
Jeroen Ketema
fd49871b9a
C++: Handle destructors of temporaries with extended lifetimes
2024-03-19 10:56:44 +01:00
Mathias Vorreiter Pedersen
0c3d9f75f4
C++: Add change note.
2024-03-19 09:41:58 +00:00