Paolo Tranquilli
1daedd9fb6
Revert "Swift: use C++20 constraints and concepts to simplify code"
2023-08-21 17:40:15 +02:00
Paolo Tranquilli
7c764f3b50
Swift: use C++20 constraints and concepts to simplify code
...
This simplifies several instances of metaprogramming by leveraging
[constraints and concepts from C++20][1]. This:
* gets rid of `std::enable_if` by usage of `requires`, making it more
readable and yield better compiler messages.
* uses `requires` instead of `static_assert` to enforce `TrapLabel`
typing
* simplifies all compile-time tests for validity of a given expression
* uses some standard library concepts where possible
* generalizes and simplifies `SwiftLocationExtractor`
Notice that in order to use the `std::derived_from` concept, `virtual`
inheritance had to be added to the label tags, because diamond
inheritance is a problem otherwise. That's because
`std::derived_from<T, U>` requires that `T*` be convertible to `U*`,
which is false if there are multiple non-virtual inheritance paths from
`U` to `T`. As tags never get actually instantiated, there is no runtime
performance penalty in using `virtual` inheritance.
[1]: https://en.cppreference.com/w/cpp/language/constraints
2023-08-17 17:24:42 +02:00
Paolo Tranquilli
ef804c018d
C++: make cmake generation work with internal rule `cc_binary_add_features`
2023-08-14 17:32:03 +02:00
Henry Mercer
1213eba630
Merge branch 'main' into post-release-prep/codeql-cli-2.14.2
2023-08-11 13:54:55 +01:00
github-actions[bot]
432c21d4fb
Post-release preparation for codeql-cli-2.14.2
2023-08-09 18:45:18 +00:00
Rasmus Wriedt Larsen
69aa099ed1
Misc: Fixup `accept-expected-changes-from-ci.py`
...
I guess there has been a rename of the URL from `/jobs/` to `/job/`, since the script has been working previously.
2023-08-09 10:44:31 +02:00
github-actions[bot]
79c90fa36a
Release preparation for version 2.14.2
2023-08-07 18:08:52 +00:00
github-actions[bot]
f91b7a9342
Post-release preparation for codeql-cli-2.14.1
2023-07-21 16:16:25 +00:00
github-actions[bot]
c936a920b0
Release preparation for version 2.14.1
2023-07-20 16:32:27 +00:00
github-actions[bot]
13cf054a9d
Post-release preparation for codeql-cli-2.14.0
2023-07-07 14:55:41 +00:00
github-actions[bot]
6484ee106e
Release preparation for version 2.14.0
2023-07-07 08:22:14 +00:00
Dave Bartolomeo
9631e9f2f1
Bump minor version numbers post-GHES
2023-07-06 10:10:01 -04:00
Dave Bartolomeo
2bb9adfbf1
Merge remote-tracking branch 'origin/main' into dbartol/mergeback-3.10
2023-07-06 10:00:46 -04:00
Alex Denisov
d744b218f6
Misc: add bazel buildifer pre-commit hook
2023-06-30 13:07:04 +02:00
github-actions[bot]
668aaa2dc8
Post-release preparation for codeql-cli-2.13.5
2023-06-30 08:51:48 +00:00
github-actions[bot]
9d7987f822
Release preparation for version 2.13.5
2023-06-29 09:26:18 +00:00
Kasper Svendsen
9202708719
Misc: Enable implicit this warnings for remaining packs
2023-06-27 13:03:11 +02:00
github-actions[bot]
18b678e69e
Post-release preparation for codeql-cli-2.13.4
2023-06-20 10:20:05 +00:00
github-actions[bot]
e4be303a23
Release preparation for version 2.13.4
2023-06-08 19:57:37 +00:00
Paolo Tranquilli
700e3d5e53
Codegen: rename `ipa` to `synth`
2023-06-07 09:12:39 +02:00
Nora Dimitrijević
2529312d1d
Codegen: fix test.qlgen failure
2023-06-06 15:58:19 +02:00
Nora Dimitrijević
928da77d10
Merge branch 'main' into redsun82/swift-synth-properties
2023-06-06 15:34:02 +02:00
Paolo Tranquilli
be9d32a6c1
Bazel/CMake: make include not use cmake include
...
...but rather just pass along targets. This is required to fix CMake
generation in the internal repository.
2023-06-05 11:43:48 +02:00
Paolo Tranquilli
400176f677
Swift: fix cmake generation
...
The bazel -> cmake generator is currently not capable of handling
separate included generated cmake files making use of common C/C++
dependencies.
To work around this limitation, a single generated cmake is now in
place. Long-term, we should either:
* make the cmake generator handle common dependencies gracefully, or
* make the cmake generation aspect travel up `pkg_` rules `srcs`
attributes
so to avoid having to list the targets to be generated in the top-level
`BUILD` file.
Other things fixed:
* removed some warning spam about redefined `BAZEL_CURRENT_REPOSITORY`
* fixed the final link step, that was failing because `libswiftCore.so`
was not being linked.
2023-06-05 11:12:11 +02:00
Paolo Tranquilli
cc271d682e
Codegen: ignore `synth` properties in `cppgen`
2023-05-25 16:05:25 +02:00
Paolo Tranquilli
b09386a2c8
Codegen: ignore `synth` properties in `Raw.qll`
2023-05-25 16:05:12 +02:00
Paolo Tranquilli
00fb796f3b
Codegen: ignore `synth` properties in `dbschemegen`
2023-05-25 16:05:12 +02:00
Paolo Tranquilli
d2c9847a79
Codegen: parse `synth` property modifier
2023-05-25 16:05:12 +02:00
Paolo Tranquilli
165ac3eeaa
Codegen: define and propagate `synth` property flag
2023-05-25 16:05:12 +02:00
Paolo Tranquilli
242d263e8a
Codegen: move ipa info from `ql.Class` to `ql.Property`
2023-05-25 16:05:11 +02:00
github-actions[bot]
d2e192020b
Post-release preparation for codeql-cli-2.13.3
2023-05-24 11:26:12 +00:00
Paolo Tranquilli
fce33d369b
Merge branch 'codeql-cli-2.13.3' into redsun82/swift-hidden-ast
2023-05-23 15:31:29 +02:00
Paolo Tranquilli
b4edc92079
Swift: make hideability spread upward in the hierarchy
2023-05-23 12:45:18 +02:00
Paolo Tranquilli
a087fef335
Swift: implement `@ql.hideable`
2023-05-23 12:45:18 +02:00
Paolo Tranquilli
7dd18ff801
Swift: add `@ql.hideable` to schema loading
2023-05-23 12:45:18 +02:00
github-actions[bot]
7aa23cf11d
Release preparation for version 2.13.3
2023-05-22 20:47:00 +00:00
Paolo Tranquilli
de03bdc235
Swift: fix hidden AST getters
...
For consistency with the C/C++ QL library, getters of AST elements
within the hidden AST should not themselves skip other hidden AST
elements.
2023-05-22 09:57:48 +02:00
Mathias Vorreiter Pedersen
f1530aa4b4
Merge pull request #12977 from RasmusWL/accept-expected-changes-from-ci-script
...
Misc: Add script to accept `.expected` changes from CI
2023-05-17 14:55:23 +01:00
Rasmus Wriedt Larsen
54d35dbc0b
Misc: Delete empty CONSISTENCY files
...
As requested by `@hvitved`
2023-05-10 17:37:39 +02:00
Rasmus Wriedt Larsen
cb8c4094fc
Misc: Add `--force` option
2023-05-10 17:20:32 +02:00
Kasper Svendsen
d346d1733e
Swift: Make implicit this receivers explicit
2023-05-10 16:12:52 +02:00
Paolo Tranquilli
95248d17d1
Codegen: prepend `.gitattributes` entries with `/`
2023-05-05 10:08:44 +02:00
Paolo Tranquilli
436f2437ef
Codegen: also mark generated `.gitattributes` as `linguist-generated`
2023-05-05 09:59:44 +02:00
Paolo Tranquilli
1155b97232
Codegen: mark generated checked in files as such
2023-05-05 09:29:16 +02:00
Paolo Tranquilli
9544b96ff1
Merge branch 'main' into redsun82/swift-json
2023-05-04 10:34:11 +02:00
Rasmus Wriedt Larsen
c9680b9202
Misc: Look for .expected changes from `integration-tests...`
2023-05-03 17:40:21 +02:00
Rasmus Wriedt Larsen
b048f9d8c4
Misc: Allow specifying SHA directly to script
2023-05-03 17:39:20 +02:00
Rasmus Wriedt Larsen
e3fc6d67cc
Misc: Allow no internal CI
2023-05-03 17:31:52 +02:00
Paolo Tranquilli
1d492f89cc
Merge branch 'main' into redsun82/swift-logging-assertions-and-prints
2023-05-03 15:19:08 +02:00
Paolo Tranquilli
c7c12a7108
Swift: add json and date dependencies
2023-05-03 14:32:30 +02:00