Jeroen Ketema
168f7f5d34
C++: Add support for C++ requires expressions
2024-10-15 13:44:17 +02:00
Jeroen Ketema
723236d15b
C++: Add a skeleton class for requires expressions
2024-10-09 02:16:20 +02:00
Jeroen Ketema
8ca52f278a
C++: Fix coroutine IR inconsistencies
...
While here, remove some dead code related to fixed points from the database
scheme.
2024-09-03 18:12:36 +02:00
Jeroen Ketema
4945943732
C++: Support C11 _Generic expressions
2024-08-30 14:24:03 +02:00
Jeroen Ketema
9e861ce717
C++: Add support for more clang builtins
2024-08-28 13:08:42 +02:00
Jeroen Ketema
9744c06933
C++: Expose explicit and explicit(bool) function specifiers
2024-08-02 15:39:18 +02:00
Jeroen Ketema
4dcf67940c
C++: Add getTemplateClass to DeductionGuide
2024-08-01 20:54:53 +02:00
Jeroen Ketema
acbca9c108
C++: Support destroying deletes
2024-07-24 08:21:01 +02:00
Alexandre Boulgakov
a0954f15c0
C++: Support using enum declarations.
2024-07-22 17:42:25 +01:00
Jeroen Ketema
3f789bad60
C++: Support more builtin operations
2024-07-10 21:27:09 +02:00
Jeroen Ketema
9eb51a9b9e
C++: Add value category column to the expr_reuse relation
2024-03-27 22:49:40 +01:00
Jeroen Ketema
8d5eab401d
C++: Introduce re-use expressions in the database scheme
2024-03-13 13:28:27 +01:00
Jeroen Ketema
dd39fa0bde
C++: Support C++20 range-based for initializers
2024-02-16 15:20:14 +01:00
Jeroen Ketema
972d86c0a0
C++: Add column to mangled_name table with completeness information
2024-02-01 16:12:53 +01:00
Jeroen Ketema
9c1de5b2b6
C++: Support more function types
2024-01-02 15:13:20 +01:00
Jeroen Ketema
ad2fb7c6d5
C++: Support attribute arguments that are expressions
2023-12-23 10:04:50 +01:00
Nora Dimitrijević
0307354d6e
Relax the C++ dbscheme for link_targets/2
2023-12-05 22:03:40 +01:00
Jeroen Ketema
7dec819151
C++: Expose whether a function was prototyped or not
2023-11-28 10:24:43 +01:00
Mathias Vorreiter Pedersen
86fe5b47db
C++: Remove 'assignpaddexpr' and 'assignpsubexpr' from the 'assign_bitwise_expr' type.
2023-10-30 16:06:53 +00:00
Jeroen Ketema
903f376620
C++: Define an extractor version table and use in IR generation
2023-10-26 12:07:19 +02:00
Jeroen Ketema
2a64552979
C++: Add support for C23/C++23 floating-point types
2023-10-19 10:45:14 +02:00
Alex Eyers-Taylor
d79a2c7674
CPP:Make __is_trivial a builtin operation.
2023-09-14 12:50:36 +01:00
Jeroen Ketema
7b3bdee5ea
C++: Update dbscheme and add upgrade and downgrade scripts
2023-08-04 17:59:03 +02:00
Alexandre Boulgakov
d0a77a8433
C++: Support repeated initializers in dbscheme.
2023-03-31 17:53:12 +01:00
Jeroen Ketema
1bab950023
C++: Introduce (_Complex) _Float16 type which is needed after frontend update
2023-01-10 10:41:43 +01:00
Jeroen Ketema
b9b0c8091f
C++: Uncomment cases in dbscheme
...
Note that the builtin types `__int{8,16,32,64}` are not uncommented,
as these are never and could have never been generated by the
extractor.
2023-01-06 14:26:23 +01:00
Jeroen Ketema
23b9b07f28
C++: Support more builtin operations
2022-09-08 10:06:57 +02:00
Jeroen Ketema
3b81f4860e
C++: Add orphaned local variable relation to DB scheme
2022-08-19 15:21:56 +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
553f1c496e
C++: Update DB scheme to allow for constant expression as attribute arguments
2022-08-10 21:11:58 +02:00
Jeroen Ketema
20b66eaf34
C++: Support __builtin_shuffle builtin
...
While here write gcc instead of GNU, which is more accurate.
2022-07-29 09:08:56 +02:00
Jeroen Ketema
81e687ea98
C++: Support __builtin_bit_cast builtin
2022-07-29 09:08:56 +02:00
Jeroen Ketema
a85d3f9b7f
C++: Support __has_unique_object_representations builtin
2022-07-29 09:08:56 +02:00
Jeroen Ketema
0c03935437
C++: Support __is_aggregate builtin
...
Fix some whitespace issues while here.
2022-07-29 09:08:56 +02:00
Jeroen Ketema
c4283dd23f
C++: Support __is_assignable builtin
...
While here fix the documentation of `__is_trivially_assignable` and
`__is_nothrow_assignable`.
2022-07-29 09:08:56 +02:00
Jeroen Ketema
38be04461e
C++: Introduce relation for tracking braced initializers
2022-05-30 16:26:19 +02: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
Paolo Tranquilli
34829e92b1
C++: Remove uniqueness constraint from uuid
...
Different class definitions can have the same uuid. This happens for
example when using `#import <msxml6.dll>` there will be several C++
classes generated in `msxml6.tlh` which will share uuids with
`extern "C"` struct declarations in the system header `msxml.h`.
Notice that as far as the standard cpp QL library and queries go, we
expose `getUuid()` on `UserType` and we never try to invert it, so we
only rely on uniqueness of the `id` column in the `usertype_uuid` table,
not the `uuid` column.
Closes github/codeql-c-team#893
2022-03-10 10:33:37 +01:00
Jeroen Ketema
f358f8f265
C++: Add DB relation identifying structured bindings
2022-02-17 11:44:08 +01:00
Jeroen Ketema
bf6ca7a7be
C++: Remove some unused legacy relations from the DB scheme
2022-02-15 10:16:35 +01:00
Mathias Vorreiter Pedersen
ab7850c581
Revert "Merge pull request #7982 from jketema/remove-legacy-relations"
...
This reverts commit 2b6d57d85b , reversing
changes made to 9b4dbb9dd8 .
2022-02-14 09:11:56 +00:00
Jeroen Ketema
94d3d63704
C++: Remove some unused legacy relations from the DB scheme
2022-02-11 16:35:08 +01:00
Rasmus Wriedt Larsen
987b573709
Fix hasLocationInfo URL reference
...
Follow up to https://github.com/github/codeql/pull/5830
2021-09-29 13:47:58 +02:00
Tom Hvitved
6c32b92929
C++: Drop redundant columns from files and folders relations
2021-09-14 13:14:04 +02:00
Andrew Eisenberg
2c5dd2dfa3
Packaging: Refactor the cpp libraries
...
This PR separates the core cpp packs into `codeql/cpp-queries` and
`codeql/cpp-all`.
There are very few lines of code changed. Almost all changes are moving
files around.
2021-08-17 11:22:36 -07:00