diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index d2b46906..d1c8e6f6 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -42,42 +42,28 @@ jobs: matrix: include: # Linux, gcc - - { compiler: gcc-4.8, cxxstd: '03,11', os: ubuntu-18.04, install: 'g++-4.8-multilib', address-model: '32,64' } - - { compiler: gcc-4.9, cxxstd: '03,11', os: ubuntu-20.04, container: 'ubuntu:16.04' } - - { compiler: gcc-5, cxxstd: '03,11,14,1z', os: ubuntu-18.04, install: 'g++-5-multilib', address-model: '32,64' } - - { compiler: gcc-6, cxxstd: '03,11,14,17', os: ubuntu-18.04, install: 'g++-6-multilib', address-model: '32,64' } - - { compiler: gcc-7, cxxstd: '03,11,14,17', os: ubuntu-18.04, install: 'g++-7-multilib', address-model: '32,64' } - - { compiler: gcc-8, cxxstd: '03,11,14,17,2a', os: ubuntu-18.04, install: 'g++-8-multilib', address-model: '32,64' } - - { compiler: gcc-9, cxxstd: '03,11,14,17,2a', os: ubuntu-18.04, install: 'g++-9-multilib', address-model: '32,64' } - - { compiler: gcc-10, cxxstd: '03,11,14,17,20', os: ubuntu-20.04, install: 'g++-10-multilib', address-model: '32,64' } - - { compiler: gcc-11, cxxstd: '03,11,14,17,20', os: ubuntu-20.04, install: 'g++-11-multilib', address-model: '32,64' } - - { compiler: gcc-12, cxxstd: '03,11,14,17,20', os: ubuntu-22.04, install: 'g++-12-multilib', address-model: '32,64' } - - { name: GCC w/ sanitizers, sanitize: yes, compiler: gcc-12, cxxstd: '03,11,14', os: ubuntu-22.04 } - - { name: GCC w/ sanitizers, sanitize: yes, compiler: gcc-12, cxxstd: '17,20,2b', os: ubuntu-22.04 } + - { compiler: gcc-7, cxxstd: '03,11,14,17', os: ubuntu-20.04, install: 'g++-7' } + - { compiler: gcc-8, cxxstd: '03,11,14,17', os: ubuntu-20.04, install: 'g++-8' } + - { compiler: gcc-9, cxxstd: '03,11,14,17', os: ubuntu-20.04, install: 'g++-9' } + - { compiler: gcc-10, cxxstd: '03,11,14,17,20', os: ubuntu-20.04, install: 'g++-10' } + - { compiler: gcc-11, cxxstd: '03,11,14,17,20', os: ubuntu-20.04, install: 'g++-11' } + - { name: "gcc-12 w/ sanitizers (03,11,14)", sanitize: yes, compiler: gcc-12, cxxstd: '03,11,14', os: ubuntu-22.04 } + - { name: "gcc-12 w/ sanitizers (17,20,2b)", sanitize: yes, compiler: gcc-12, cxxstd: '17,20,2b', os: ubuntu-22.04 } - { name: Collect coverage, coverage: yes, compiler: gcc-8, cxxstd: '03,11', os: ubuntu-20.04, install: 'g++-8-multilib', address-model: '32,64' } - # Linux, clang - - { compiler: clang-3.7, cxxstd: '03,11,14', os: ubuntu-20.04, container: 'ubuntu:16.04' } - - { compiler: clang-3.8, cxxstd: '03,11,14', os: ubuntu-20.04, container: 'ubuntu:16.04' } - - { compiler: clang-3.9, cxxstd: '03,11,14', os: ubuntu-18.04 } - - { compiler: clang-4.0, cxxstd: '03,11,14', os: ubuntu-18.04 } - - { compiler: clang-5.0, cxxstd: '03,11,14,1z', os: ubuntu-18.04 } - - { compiler: clang-6.0, cxxstd: '03,11,14,17', os: ubuntu-18.04 } - - { compiler: clang-7, cxxstd: '03,11,14,17', os: ubuntu-18.04 } - - { compiler: clang-8, cxxstd: '03,11,14,17', os: ubuntu-18.04 } - - { compiler: clang-9, cxxstd: '03,11,14,17,2a', os: ubuntu-20.04 } - - { compiler: clang-10, cxxstd: '03,11,14,17,20', os: ubuntu-20.04 } - - { compiler: clang-11, cxxstd: '03,11,14,17,20', os: ubuntu-20.04 } - - { compiler: clang-12, cxxstd: '03,11,14,17,20', os: ubuntu-20.04 } - - { compiler: clang-13, cxxstd: '03,11,14,17,20', os: ubuntu-22.04 } - - { compiler: clang-14, cxxstd: '03,11,14,17,20', os: ubuntu-22.04 } - - # libc++ - - { compiler: clang-6.0, cxxstd: '03,11,14', os: ubuntu-18.04, stdlib: libc++, install: 'clang-6.0 libc++-dev libc++abi-dev' } - - { compiler: clang-12, cxxstd: '03,11,14,17,20', os: ubuntu-20.04, stdlib: libc++, install: 'clang-12 libc++-12-dev libc++abi-12-dev' } - - { name: Clang w/ sanitizers, sanitize: yes, - compiler: clang-12, cxxstd: '03,11,14,17,20', os: ubuntu-20.04, stdlib: libc++, install: 'clang-12 libc++-12-dev libc++abi-12-dev' } + # Linux, clang, libc++ + - { compiler: clang-7, cxxstd: '03,11,14,17', os: ubuntu-20.04, stdlib: libc++, install: 'clang-7 libc++-7-dev libc++abi-7-dev' } + - { compiler: clang-10, cxxstd: '03,11,14,17,20', os: ubuntu-20.04, stdlib: libc++, install: 'clang-10 libc++-10-dev libc++abi-10-dev' } + - { compiler: clang-11, cxxstd: '03,11,14,17,20', os: ubuntu-20.04, stdlib: libc++, install: 'clang-11 libc++-11-dev libc++abi-11-dev' } + - { compiler: clang-12, cxxstd: '03,11,14,17,20', os: ubuntu-20.04, stdlib: libc++, install: 'clang-12 libc++-12-dev libc++abi-12-dev' } + - { compiler: clang-13, cxxstd: '03,11,14,17,20,2b', os: ubuntu-22.04, stdlib: libc++, install: 'clang-13 libc++-13-dev libc++abi-13-dev' } + - { compiler: clang-14, cxxstd: '03,11,14,17,20,2b', os: ubuntu-22.04, stdlib: libc++, install: 'clang-14 libc++-14-dev libc++abi-14-dev' } + - { name: "clang-12 w/ sanitizers", sanitize: yes, + compiler: clang-12, cxxstd: '03,11,14,17,20,2b', os: ubuntu-20.04, stdlib: libc++, install: 'clang-12 libc++-12-dev libc++abi-12-dev' } + # not using libc++ because of https://github.com/llvm/llvm-project/issues/52771 + - { name: "clang-14 w/ sanitizers", sanitize: yes, + compiler: clang-14, cxxstd: '03,11,14,17,20,2b', os: ubuntu-22.04 } # OSX, clang - { compiler: clang, cxxstd: '03,11,14,17,2a', os: macos-11, sanitize: yes }