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
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
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
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
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
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
Robert Marsh
fbbd57b34f
C++: Suppress epxr destructors in preparation for temporaries
2024-03-05 21:12:12 +00: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
4a501e5b3c
C++: Accept test changes.
2024-02-27 13:53:43 +00:00
Mathias Vorreiter Pedersen
fbb0ffcadd
C++: Add testcase with invalid IR from vacuous destructor call.
2024-02-27 12:53:46 +00:00
Robert Marsh
dd97584eff
C++: fix for duplicated parent of ReturnVoid statements
2024-02-23 16:19:34 +00:00
Robert Marsh
ebe6ee5257
C++: accept test changes from extractor fixes
2024-02-22 16:44:19 +00:00
Robert Marsh
875ab74c28
Merge branch 'main' into rdmarsh2/cpp/ir-synthetic-destructors
...
Fixes conflicts in C++ IR tests and Stmt.qll
2024-02-21 21:34:49 +00:00
Robert Marsh
e0c7849f52
C++: fix incorrect use of getChildInternal
2024-02-21 20:35:58 +00:00
Jeroen Ketema
f9d391d087
C++: Support destructors for range-based for-loops
2024-02-21 17:26:32 +01:00
Jeroen Ketema
11dc467add
C++: Add test where the for loop should call destructors at the end of its body
2024-02-21 14:42:23 +01:00
Jeroen Ketema
57cb7f8218
C++: Update tests after extractor changes related to static variables
2024-02-21 10:22:59 +01:00
Jeroen Ketema
c1f18edfed
C++: Add IR tests for destruction of static locals
2024-02-21 10:22:59 +01:00
Jeroen Ketema
7ec95fba6d
C++: Add more range-based for-loop IR tests
2024-02-20 09:22:13 +01:00
Robert Marsh
2494b7d801
C++: fix for IR CFG problem with return in if
2024-02-16 21:08:21 +00:00
Robert Marsh
2c8ed6479a
C++: test for return in if
2024-02-16 17:55:34 +00:00
Jeroen Ketema
dd39fa0bde
C++: Support C++20 range-based for initializers
2024-02-16 15:20:14 +01:00
Jeroen Ketema
da3ff4813f
Merge pull request #15612 from jketema/destructors4a
...
C++: Support `constexpr if` in the IR
2024-02-15 17:29:56 +01:00
Jeroen Ketema
33413129a5
C++: For unnamed local variable declaration entries consider the name of the variable
2024-02-14 15:03:04 +01:00
Jeroen Ketema
46bc311111
C++: Support constexpr if in the IR
2024-02-14 13:37:56 +01:00
Jeroen Ketema
a3b3aa4f25
C++: Update tests after extractor changes
2024-02-13 21:31:21 +01:00
Robert Marsh
7e23ccd383
Merge branch 'main' into rdmarsh2/cpp/ir-synthetic-destructors
2024-02-13 15:45:51 +00:00
Jeroen Ketema
f3e55a46ee
C++: Update test results of constexpr if destructors
2024-02-13 13:37:59 +01:00
Jeroen Ketema
fb072a5156
C++: Add additional IR tests for init statements
2024-02-13 10:44:24 +01:00
Jeroen Ketema
8aeb75675a
C++: Add constructor and destructor for vector to IR test
2024-02-13 10:39:27 +01:00
Jeroen Ketema
b509645e02
C++: Bump language version in IR tests to C++20
2024-02-13 10:18:31 +01:00
Robert Marsh
f791b0ebbf
C++: Model for smart pointer destructors
2024-02-13 01:00:46 +00:00
Robert Marsh
7d8872bb99
C++: Fix for multiple for-loop variables with destructors
2024-02-13 00:40:19 +00:00
Robert Marsh
6663420d39
C++: test for multiple for loop variables with destructors
2024-02-13 00:35:56 +00:00
Robert Marsh
b94c4a6e1b
C++: fix for destructor of while-loop condition
2024-02-13 00:13:22 +00:00
Robert Marsh
bac7e46b0f
C++: tests for destructors after a while-loop condition
2024-02-12 23:55:42 +00:00