mirror of
https://github.com/github/codeql.git
synced 2026-06-03 12:50:16 +02:00
This checks in the trapgen script generating trap entries in C++. The codegen suite has been slightly reorganized, moving the templates directory up one level and chopping everything into smaller bazel packages. Running tests is now done via ``` bazel run //swift/codegen/test ``` With respect to the PoC, the nested `codeql::trap` namespace has been dropped in favour of a `Trap` prefix (or suffix in case of entries) within the `codeql` namespace. Also, generated C++ code is not checked in in git any more, and generated during build. Finally, labels get printed in hex in the trap file. `TrapLabel` is for the moment only default-constructible, so only one single label is possible. `TrapArena`, that is responsible for creating disjoint labels will come in a later commit.
33 lines
827 B
YAML
33 lines
827 B
YAML
name: "Swift: Check code generation"
|
|
|
|
on:
|
|
pull_request:
|
|
paths:
|
|
- "swift/**"
|
|
- .github/workflows/swift-codegen.yml
|
|
branches:
|
|
- main
|
|
|
|
jobs:
|
|
codegen:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@v3
|
|
- uses: ./.github/actions/fetch-codeql
|
|
- uses: bazelbuild/setup-bazelisk@v2
|
|
- uses: actions/setup-python@v3
|
|
with:
|
|
python-version: '~3.8'
|
|
cache: 'pip'
|
|
- name: Install python dependencies
|
|
run: |
|
|
pip install -r swift/codegen/requirements.txt
|
|
- name: Run unit tests
|
|
run: |
|
|
bazel test //swift/codegen/test --test_output=errors
|
|
- name: Check that code was generated
|
|
run: |
|
|
bazel run //swift/codegen
|
|
git add swift
|
|
git diff --exit-code --stat HEAD
|