Commit Graph

3271 Commits

Author SHA1 Message Date
Jeroen Ketema
9fd95381dc C++: Support #elifdef #elifndef, and MSVC's #import 2025-01-21 16:14:16 +01:00
github-actions[bot]
ebe9088458 Post-release preparation for codeql-cli-2.20.2 2025-01-21 13:58:45 +00:00
Chris Smowton
9fa1ad9d8d Fix changelog typos 2025-01-21 13:58:44 +00:00
github-actions[bot]
f21784db9d Release preparation for version 2.20.2 2025-01-21 13:58:43 +00:00
Chris Smowton
fb140404b6 Revert "Release preparation for version 2.20.2" 2025-01-21 13:58:38 +00:00
github-actions[bot]
fbb7f0a0c6 Post-release preparation for codeql-cli-2.20.2 2025-01-20 21:11:14 +00:00
github-actions[bot]
a0512a50f2 Release preparation for version 2.20.2 2025-01-20 21:11:12 +00:00
Mathias Vorreiter Pedersen
ed651294b6 Merge branch 'main' into remove-conflation-from-out-nodes 2025-01-20 12:42:26 +00:00
Jeroen Ketema
4b85ea3bc6 Merge pull request #18502 from jketema/consteval
C++: Support `if consteval` and `if ! consteval`
2025-01-20 12:49:02 +01:00
Jeroen Ketema
a9e0f20861 C++: Simplify consteval if to be just a single class with an isNot predicate 2025-01-20 11:20:11 +01:00
Jeroen Ketema
a74189f6fa Update cpp/ql/lib/change-notes/2024-01-16-consteval-if.md
Co-authored-by: Calum Grant <42069085+calumgrant@users.noreply.github.com>
2025-01-20 10:43:25 +01:00
Mathias Vorreiter Pedersen
d1bb5970ce Merge branch 'main' into remove-conflation-from-out-nodes 2025-01-18 18:05:22 +00:00
Mathias Vorreiter Pedersen
2448475141 C++: Ensure that 'argumentOf' does not map to multiple argument positions. 2025-01-18 02:11:50 +00:00
Mathias Vorreiter Pedersen
5c494c3f66 C++: Infer 'b1 = true' and 'b2 = true' from 'b1 && b2 = true', and infer 'b1 = false' and 'b2 = false' from 'b1 || b2 = false'. 2025-01-17 13:07:41 +00:00
Mathias Vorreiter Pedersen
d8ec6dd155 Merge pull request #18490 from MathiasVP/generate-int-to-bool-conversion-instructions-2
C++: Generate int-to-bool conversions in C code
2025-01-17 12:57:55 +00:00
Mathias Vorreiter Pedersen
21f9e6763d C++: Remove an unnecessary conjunct. 2025-01-17 12:44:22 +00:00
Mathias Vorreiter Pedersen
b39a932ae1 C++: Update comment in the char pred of 'GuardConditionFromNotExpr'. 2025-01-17 12:17:47 +00:00
Jeroen Ketema
ff0d4955cf C++: Fix change note 2025-01-16 17:55:45 +01:00
Mathias Vorreiter Pedersen
d0bd6eb2eb C++: Remove the type restriction on 'GuardConditionFromNotExpr' since this class also applies to C++. 2025-01-16 16:55:10 +00:00
Jeroen Ketema
52eef7c4c2 C++: Fix typo in test 2025-01-16 13:19:54 +01:00
Jeroen Ketema
d027e0c06b C++: Add change note 2025-01-16 13:12:20 +01:00
Jeroen Ketema
bd40d249e3 C++: Support more "noreturn" attributes in DefaultOptions 2025-01-16 13:04:44 +01:00
Jeroen Ketema
6ad342c567 C++: Add change note 2025-01-16 10:22:54 +01:00
Jeroen Ketema
4a3350bd41 C++: Update stats file 2025-01-16 08:18:09 +01:00
Jeroen Ketema
123f1d599a C++: Add upgrade and downgrade scripts 2025-01-16 08:18:07 +01:00
Jeroen Ketema
bc2f203c4b C++: Support if consteval and if ! consteval 2025-01-16 08:17:57 +01:00
Mathias Vorreiter Pedersen
5373e2222e C++: Improve IRGuads logic for 'unlikely' expressions. 2025-01-16 00:45:07 +00:00
Mathias Vorreiter Pedersen
14db788125 C++: Ensure that 'x' in 'if(!x) is also an AST-based GuardCondition. 2025-01-16 00:39:37 +00:00
Mathias Vorreiter Pedersen
2d9036eb5f C++: Make 'getInstructionConvertedResultExpression' equivalent in C and C++. 2025-01-16 00:39:35 +00:00
Mathias Vorreiter Pedersen
ebb7f28d39 C++: Remove workaround for missing comparisons against 0 in C code. 2025-01-16 00:39:33 +00:00
Mathias Vorreiter Pedersen
9810a4f34d C++: Remove 'inNonZeroCase' from IRGuards since we now always have implicit comparisons against 0 in C code. 2025-01-16 00:39:32 +00:00
Mathias Vorreiter Pedersen
65771614ef C++: Insert int-to-bool conversions at binary conditional expressions. 2025-01-16 00:39:28 +00:00
Mathias Vorreiter Pedersen
f30bfb63cf C++: Insert int-to-bool conversions at 'NotExpr's. 2025-01-16 00:39:25 +00:00
Mathias Vorreiter Pedersen
dd39b97ab0 C++: Insert int-to-bool conversions at conditions. 2025-01-16 00:39:22 +00:00
Mathias Vorreiter Pedersen
5acd2bb2fb C++: Adjust the result type at 'NotExpr' and at comparisons. 2025-01-16 00:39:17 +00:00
Mathias Vorreiter Pedersen
9429b03896 C++: Provide a hook for overriding 'getResultType'. 2025-01-16 00:39:16 +00:00
Mathias Vorreiter Pedersen
6dd1c5e809 C++: Split out 'NotExpr' to its own class. 2025-01-16 00:39:14 +00:00
Jeroen Ketema
84c674b992 C++: Fix typos in IR translation comments 2025-01-15 20:16:43 +01:00
Jeroen Ketema
a3cd66844c C++: Add change note 2025-01-15 11:38:09 +01:00
Jeroen Ketema
cd5e77348b C++: Add upgrade and downgrade scripts 2025-01-15 11:38:07 +01:00
Jeroen Ketema
8e39eb9020 C++: Fix incorrect dbscheme assumptions on proxy classes 2025-01-15 11:38:05 +01:00
Jeroen Ketema
537feddf06 C++: Introduce usertypes for structs and unions 2025-01-15 11:38:01 +01:00
Mathias Vorreiter Pedersen
0ff37f1205 Merge pull request #18486 from MathiasVP/indirect-instruction-barriers
C++: Add a `BarrierGuard` module for indirect instruction/operand nodes.
2025-01-14 11:37:58 +00:00
Simon Friis Vindum
7196892867 Merge pull request #18461 from paldepind/cpp-conditional-expr-range-analysis
C++: Only propagate smallest/largest range bound in conditional expressions
2025-01-14 12:31:21 +01:00
Mathias Vorreiter Pedersen
aa55b8e726 Merge pull request #18485 from MathiasVP/speed-up-cpp-unbounded-write
C++: Speed up the `cpp/unbounded-write` query for an upcoming change
2025-01-14 10:39:03 +00:00
Jeroen Ketema
a2aefc9d61 Merge pull request #18478 from jketema/stats-try
C++: Update stats file
2025-01-14 10:47:20 +01:00
Jeroen Ketema
4951571dd4 Merge pull request #18488 from geoffw0/cleanup
C++: Fix a couple of typos.
2025-01-14 10:46:56 +01:00
Geoffrey White
96008469d4 C++: QLDoc correction. 2025-01-14 09:19:50 +00:00
Mathias Vorreiter Pedersen
d9d0d9348c C++: Add change note. 2025-01-13 18:53:59 +00:00
Mathias Vorreiter Pedersen
6f3a2c41b3 C++: Fill in skeleton for indirect instruction/operand barrier nodes. 2025-01-13 18:34:32 +00:00