Add a second cpp2::range
constructor which takes 2 types, and deduce the common type for them (if available)
#719
Workflow file for this run
This file contains 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: | |
branches-ignore: | |
- docs | |
push: | |
branches-ignore: | |
- docs | |
workflow_dispatch: | |
jobs: | |
build-windows: | |
runs-on: windows-latest | |
steps: | |
- uses: actions/checkout@v3 | |
- 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@v3 | |
- 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 |