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
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
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
Jeroen Ketema
a3ae304dfe
C++: Handle getInitializingExpr in PrintAST
2024-03-21 11:32:23 +01:00
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
9300b04def
C++: Update test results
2024-03-21 00:05:30 +01: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
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
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
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
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
Robert Marsh
3d4f7d880d
C++: unsuppress destructoion of temporaries with extended lifetimes
2024-03-19 15:54:42 +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
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
f36b48346e
C++: Accept test changes.
2024-03-19 12:50:43 +00:00
Mathias Vorreiter Pedersen
1af1ba48a9
C++: Accept test changes.
2024-03-19 11:46:51 +00:00
Mathias Vorreiter Pedersen
e16e1c7e83
C++: Add tests.
2024-03-19 11:26:32 +00:00
Mathias Vorreiter Pedersen
d7afd7b2e1
C++: Accept test changes.
2024-03-19 10:54:35 +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
40dbc6fdd9
C++: Accept test changes.
2024-03-18 16:27:18 +00:00
Mathias Vorreiter Pedersen
032678a367
C++: Extend tests to also test the new predicates.
2024-03-18 16:27:10 +00:00
Mathias Vorreiter Pedersen
1d12e0c9d9
Merge pull request #15941 from MathiasVP/ir-guards-from-switch-statements
...
C++: Handle `switch` statements in the guards library
2024-03-18 11:07:10 +00:00
Mathias Vorreiter Pedersen
0be329dbdc
C++: Delete duplicated code.
2024-03-18 10:33:40 +00:00
Mathias Vorreiter Pedersen
51db2b0bc4
C++: Convert tabs to spaces in ir.cpp.
2024-03-18 10:11:37 +00:00
Mathias Vorreiter Pedersen
fb218150e1
C++: Change the testcase so that it outputs the controlling values for switch statements as well.
2024-03-15 17:05:42 +00:00
Mathias Vorreiter Pedersen
07ebbb0591
C++: Accept test changes.
2024-03-15 17:04:27 +00:00
Mathias Vorreiter Pedersen
704f1fad46
C++: Add switches as testcases for guard conditions.
2024-03-15 17:02:32 +00:00
Mathias Vorreiter Pedersen
19c9ea7e20
C++: Implement alias and side effect models for iterators.
2024-03-15 12:13:43 +00:00
Mathias Vorreiter Pedersen
a51fe4a00e
C++: Make the vector and iterator classes in 'ir.cpp' more realistic. This matches the one we use for dataflow tests.
2024-03-15 12:10:48 +00:00
Jeroen Ketema
3ef1ab49ea
C++: Add IR tests for the destruction of temporaries
2024-03-13 12:00:02 +01:00
Mathias Vorreiter Pedersen
4c9876b008
C++: Accept test changes.
2024-03-06 18:18:36 -08:00
Mathias Vorreiter Pedersen
cc754858c6
C++: Add a testcase with missing flow out of the address of 'a' and to the argument of 'sink'.
2024-03-06 18:15:49 -08:00
Mathias Vorreiter Pedersen
a60afef923
C++: Add a local flow test file for IR dataflow.
2024-03-06 18:10:08 -08:00
Jeroen Ketema
6972f9b31d
C++: Update syntax-zoo expected test results
2024-03-06 09:34:47 +01:00
Robert Marsh
fbbd57b34f
C++: Suppress epxr destructors in preparation for temporaries
2024-03-05 21:12:12 +00:00
Jeroen Ketema
ae97a23c27
Merge pull request #15213 from jketema/frontend-update
...
C++: Accept test changes after frontend upgrade
2024-02-28 13:00:02 +01:00
Jeroen Ketema
00ad7854dc
C++: Accept test changes after frontend upgrade
...
* The `specifiers2` tests have a different result now due to the implementation
of CWG 2387.
* The `special_members/generated_copy` has improved results as the frontend has
improved support for deleted copy constructors.
2024-02-28 11:29:57 +01:00
Mathias Vorreiter Pedersen
b8c141f292
C++: Accept test changes.
2024-02-27 17:58:52 +00:00
Mathias Vorreiter Pedersen
892f97cd7a
C++: Add testcase with invalid IR from constructing a 'RoutineType'.
2024-02-27 17:58:52 +00:00
Mathias Vorreiter Pedersen
bba152da13
Merge branch 'main' into ir-for-vacuous-destructor-calls
2024-02-27 15:42:46 +00:00
Mathias Vorreiter Pedersen
f7b2de800b
Merge pull request #15506 from rdmarsh2/rdmarsh2/cpp/ir-synthetic-destructors
...
C++: Add implicit destructors for named variables to the IR
2024-02-27 15:12:46 +00:00