Add support for reflecting expression_lists and identifiers in an exp… #900
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Multi-platform Build of cppfront | |
| on: | |
| pull_request: | |
| paths-ignore: | |
| - 'docs/**' | |
| push: | |
| paths-ignore: | |
| - 'docs/**' | |
| workflow_dispatch: | |
| jobs: | |
| build-windows: | |
| runs-on: windows-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: ilammy/msvc-dev-cmd@v1 | |
| - name: Compiler name & version | |
| run: cl.exe | |
| - name: Build | |
| run: cl.exe source/cppfront.cpp -std:c++latest -MD -EHsc -experimental:module -W4 -WX | |
| build-unix-like: | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| runs-on: [ubuntu-22.04] | |
| compiler: [g++-10, g++-11, g++-12, clang++-12, clang++-14] | |
| cxx-std: ['c++20', 'c++2b'] | |
| exclude: | |
| # GCC 10 doesn't have support for c++23 | |
| - compiler: g++-10 | |
| cxx-std: 'c++2b' | |
| # Clang 12 and 14 do not compile on 'c++2b' due to llvm/llvm-project#58206 | |
| - compiler: clang++-12 | |
| cxx-std: 'c++2b' | |
| - compiler: clang++-14 | |
| cxx-std: 'c++2b' | |
| include: | |
| - runs-on: macos-latest | |
| compiler: clang++ | |
| cxx-std: 'c++20' | |
| - runs-on: ubuntu-22.04 | |
| compiler: clang++-15 | |
| cxx-std: 'c++20' | |
| - runs-on: ubuntu-24.04 | |
| compiler: clang++-16 | |
| cxx-std: 'c++20' | |
| - runs-on: ubuntu-24.04 | |
| compiler: clang++-17 | |
| cxx-std: 'c++20' | |
| - runs-on: ubuntu-24.04 | |
| compiler: clang++-18 | |
| cxx-std: 'c++20' | |
| - runs-on: ubuntu-24.04 | |
| compiler: clang++-18 | |
| cxx-std: 'c++23' | |
| - runs-on: ubuntu-24.04 | |
| compiler: g++-14 | |
| cxx-std: 'c++2b' | |
| runs-on: ${{ matrix.runs-on }} | |
| env: | |
| CXX: ${{ matrix.compiler }} | |
| CXXFLAGS: -std=${{ matrix.cxx-std }} -Wall -Wextra -Wold-style-cast -Wunused-parameter -Wpedantic -Werror -pthread -Wno-unknown-warning -Wno-unknown-warning-option | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Install compiler | |
| if: startsWith(matrix.runs-on, 'ubuntu') | |
| run: sudo apt-get install -y $CXX | |
| - name: Compiler name & version | |
| run: $CXX --version | |
| - name: Build | |
| run: $CXX source/cppfront.cpp $CXXFLAGS -o cppfront |