Mathias Vorreiter Pedersen
e26e83b8df
Merge pull request #11728 from github/rdmarsh2/parameterize-range-analysis
...
C++: Parameterize the semantic range analysis
2023-01-18 14:22:35 +00:00
Jeroen Ketema
06767c6760
C++: Split bad_asts.cpp IR test into two files
...
The statements from `errorExpr` - which does not parse correctly - affected the
tuples that were being generated for the other code in `bad_asts.cpp` due to
the way the front-end handles parse errors. This did not affect the test
results, but was also not the intention of the test. Split off `errorExpr` into
a separate file.
2023-01-17 18:57:29 +01:00
Robert Marsh
601b43ac0a
Merge branch 'main' into rdmarsh2/parameterize-range-analysis
...
Conflicting change to boundedPhiInp copied to RangeAnalysisStage.qll
2023-01-13 12:06:21 -05:00
Robert Marsh
938176c9da
C++: update test QL for modulus and sign analysis
...
These now instantiate their respective parameterized modules. No
results change.
2023-01-12 16:38:56 -05:00
Jeroen Ketema
e215c4c94c
C++: Accept test changes after frontend update
...
The location of a reference dereference has changed slightly.
2023-01-10 10:41:43 +01:00
Mathias Vorreiter Pedersen
a974cb1861
C++: Add another test with an _actual_ throw.
2022-12-22 10:01:41 +00:00
Mathias Vorreiter Pedersen
5fa968138c
C++: Add another test case with a throw.
2022-12-22 09:38:57 +00:00
Mathias Vorreiter Pedersen
ff6e8a285d
C++: Model semantics of '__except' condition in IR.
2022-12-21 14:08:26 +00:00
Mathias Vorreiter Pedersen
e6a03a6152
C++: Fix exception handling for '__try __except'.
2022-12-21 14:08:26 +00:00
Mathias Vorreiter Pedersen
d2964a7d4a
C++: Also handle '__finally' blocks.
2022-12-20 13:28:33 +00:00
Mathias Vorreiter Pedersen
3c8efa88e0
C++: Handle Microsoft '__try __except' in the existing 'TryStmt' IR logic.
2022-12-20 13:28:28 +00:00
Mathias Vorreiter Pedersen
cd6e421cf5
C++: Add a test with '__try __except' and '__try __finally' in the 'ir' test directory.
2022-12-20 13:28:22 +00:00
Mathias Vorreiter Pedersen
cd65e73ade
C++: Fix database inconsistency issue from ODR violation.
2022-09-30 17:04:23 +01:00
Mathias Vorreiter Pedersen
56b5010f6b
C++: Convert the SimpleRangeAnalysis test to an InlineExpectationsTest.
2022-09-30 14:23:18 +01:00
Mathias Vorreiter Pedersen
d14b2c2880
C++: Put quotes around expectation comments with spaces.
2022-09-30 14:23:18 +01:00
Mathias Vorreiter Pedersen
c4c7c95db2
C++: Add SimpleRangeAnalysis test file to the new range-analysis library test directory.
2022-09-30 14:23:14 +01:00
Mathias Vorreiter Pedersen
fc85ef76ed
C++: Introduce 'PseudoDeclarationEntry's to handle missing 'DeclarationEntry's during IR construction.
2022-09-05 22:17:14 +01:00
Mathias Vorreiter Pedersen
2da46ad691
C++: Add two testcases demonstrating malformed IR from missing declaration entries from decl stmts.
2022-09-05 17:49:20 +01:00
Jeroen Ketema
4a7ad84d02
C++: Add __func__ and __PRETTY_FUNCTION__ IR tests
2022-08-20 01:09:52 +02:00
Robert Marsh
9e0c82eabb
Merge pull request #10039 from rdmarsh2/rdmarsh2/cpp/sem-range-analysis-perf
...
C++: Fix missing bounds and performance issues in semantic range analysis
2022-08-16 12:27:02 -04:00
Robert Marsh
818bdcf3ab
C++: autoformat a test
2022-08-16 11:31:28 -04:00
Robert Marsh
5450681ade
C++: Autoformat and fix a test
2022-08-12 13:49:16 -04:00
Jeroen Ketema
4d76fd198e
C++: Handle block assignments in the IR
2022-08-12 18:43:23 +02:00
Jeroen Ketema
5c905b76b4
C++: Expose block assignment operations in the QL library
2022-08-12 18:43:23 +02:00
Jeroen Ketema
ebf8161f1b
C++: Add block assignment expression to the database schema
...
These can under some circumstances be generated by the frontend as part
of compiler generated copy constructors and assignment operators.
2022-08-12 18:43:23 +02:00
Jeroen Ketema
de142b276d
C++: Add IR test that exposes a gap in the extractor output
2022-08-12 18:43:23 +02:00
Robert Marsh
3007c96c72
C++: fix a nit
2022-08-01 15:34:03 -04:00
Mathias Vorreiter Pedersen
35c8ca15f5
Merge pull request #8912 from rdmarsh2/rdmarsh2/fix-ir-globals
...
C++: Fix IR variable reuse for global var inits
2022-06-20 16:45:39 +01:00
Jeroen Ketema
a7d095e063
Revert "C++: Fix test failures where location of reference dereference in lambda changed"
...
This reverts commit 8e7066600a .
2022-06-15 11:58:31 +02:00
Robert Marsh
e7e517bd6f
C++: Accept more updated test output
2022-06-14 15:54:50 -04:00
Robert Marsh
07a0b4df84
C++: update test expaectations
2022-06-14 11:43:05 -04:00
Robert Marsh
6d267be1a1
C++: merge main and accept test changes
2022-05-20 14:37:09 -04:00
Jeroen Ketema
71c019e126
C++: Handle C++17 switch initializers
2022-05-12 12:56:50 +02:00
Jeroen Ketema
ebbd9c5b90
C++: Handle C++17 if initializers
2022-05-12 12:56:50 +02:00
Robert Marsh
de68107a0e
C++: restrict global variable IR generation
2022-05-03 16:50:53 -04:00
Robert Marsh
7993cba457
C++: fix global vars accesses in global vars
2022-05-02 12:27:10 -04:00
Robert Marsh
b5a2a2e8c2
C++: test for global var access in a global var
2022-05-02 12:07:01 -04:00
Robert Marsh
fe52dd93ef
C++: sync and accept new consistency test
2022-04-29 15:29:07 -04:00
Robert Marsh
d1c6022efc
C++: fix inconsistencies from IR global vars
2022-04-29 14:56:13 -04:00
Jeroen Ketema
5b80fd1432
C++: Update tests for frontend update
2022-04-29 11:46:01 -04:00
Robert Marsh
abdfd2297b
C++: Fix IR variable reuse for global var inits
2022-04-29 11:46:00 -04:00
Robert Marsh
259580aeeb
Revert "Merge pull request #8933 from MathiasVP/revert-globals"
...
This reverts commit 2517371a37 , reversing
changes made to db856798b9 .
2022-04-29 11:45:10 -04:00
Mathias Vorreiter Pedersen
75c1e56bbd
Revert "Merge pull request #8515 from rdmarsh2/rdmarsh2/ir-global-vars"
...
This reverts commit 800e4ea7df , reversing
changes made to 7ce040f331 .
2022-04-27 16:04:28 +01:00
Mathias Vorreiter Pedersen
800e4ea7df
Merge pull request #8515 from rdmarsh2/rdmarsh2/ir-global-vars
...
C++: generate IR for global variables with initializers
2022-04-26 18:17:13 +01:00
Jeroen Ketema
8e7066600a
C++: Fix test failures where location of reference dereference in lambda changed
2022-04-25 21:14:17 +02:00
Robert Marsh
d0fc348ad9
C++: autoformat
2022-04-25 14:17:49 -04:00
Robert Marsh
f94fcf11cd
C++: accept dataflow test changes
2022-04-19 13:32:19 -04:00
Robert Marsh
cae08c505f
Merge branch 'main' into rdmarsh2/ir-global-vars
2022-04-18 15:25:03 -04:00
Robert Marsh
b5c8413f5c
Merge branch 'main' into rdmarsh2/ir-global-vars
2022-04-18 15:19:25 -04:00
Robert Marsh
0e3e35f233
C++: don't dump global vars without initializers
2022-04-12 11:21:41 -04:00