name: C/C++ CI on: push: branches: [master] pull_request: branches: [master] jobs: test: strategy: matrix: os: [ubuntu-latest, macos-latest, windows-latest] include: - os: ubuntu-latest compiler: gcc - os: macos-latest compiler: clang - os: windows-latest compiler: msvc runs-on: ${{ matrix.os }} env: CC: ${{ matrix.compiler }} steps: - uses: actions/checkout@v2 - name: Test run: ./scripts/test-all.sh test-tcc: runs-on: ubuntu-latest env: CC: tcc steps: - uses: actions/checkout@v2 - name: Install TCC run: sudo apt install tcc - name: Test run: ./scripts/test-all.sh test-cxx-stmt: runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 - name: Test C++ statement chaining run: | g++ tests/stmt.c -o stmt -Iinclude -Wall -Wextra -pedantic -std=c++11 -ftrack-macro-expansion=0 ./stmt bench: runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 - name: Bench run: ./scripts/bench.sh check-arities: runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 - name: Install Doxygen run: sudo apt install doxygen - name: Check arity specifiers run: python3 scripts/check-arities.py check-fmt: runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 - name: Download run-clang-format run: git submodule update --init run-clang-format - name: Check code formatting run: ./scripts/check-fmt.sh