Граф коммитов

296 Коммитов

Автор SHA1 Сообщение Дата
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