@@ -20,43 +20,58 @@ jobs:
2020 fail-fast : false
2121 matrix :
2222 include :
23- # ── Linux / GCC 14 ──
23+ # ── Linux / GCC 16 ──
2424 - os : ubuntu-24.04
25- compiler : gcc-14
25+ compiler : gcc-16
2626 preset : dev-gcc
2727
28- # ── Linux / Clang 18 ──
28+ # ── Linux / Clang 22 ──
2929 - os : ubuntu-24.04
30- compiler : clang-18 +libc++
30+ compiler : clang-22 +libc++
3131 preset : dev-clang-libcxx
3232
33- # ── macOS 15 / AppleClang 16 ──
34- - os : macos-15
35- compiler : apple-clang-16
33+ # ── macOS 26 / AppleClang 17 ──
34+ - os : macos-26
35+ compiler : apple-clang-17
3636 preset : dev-clang
3737
38- # ── Windows 2022 / MSVC ──
39- - os : windows-2022
40- compiler : msvc
38+ # ── Windows 2025 / MSVC 2026 ──
39+ - os : windows-2025
40+ compiler : msvc-2026
4141 preset : dev-msvc
4242
4343 steps :
4444 - uses : actions/checkout@v5
4545
4646 - name : Set up MSVC environment
47- if : matrix.compiler == 'msvc'
47+ if : matrix.compiler == 'msvc-2026 '
4848 shell : pwsh
4949 run : |
50- $vcvars = "C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Auxiliary\Build\vcvars64.bat"
50+ $vsPath = & "${env:ProgramFiles(x86)}\Microsoft Visual Studio\Installer\vswhere.exe" `
51+ -latest -property installationPath
52+ $vcvars = "$vsPath\VC\Auxiliary\Build\vcvars64.bat"
5153 cmd /c "`"$vcvars`" && set" | ForEach-Object {
5254 if ($_ -match '^([^=]+)=(.*)$') {
5355 "$($Matches[1])=$($Matches[2])" | Out-File -FilePath $env:GITHUB_ENV -Encoding utf8 -Append
5456 }
5557 }
5658
57- - name : Install libc++
58- if : matrix.compiler == 'clang-18+libc++'
59- run : sudo apt-get install -y libc++-18-dev libc++abi-18-dev
59+ - name : Install GCC 16
60+ if : matrix.compiler == 'gcc-16'
61+ run : |
62+ sudo add-apt-repository ppa:ubuntu-toolchain-r/test -y
63+ sudo apt-get update -q
64+ sudo apt-get install -y gcc-16 g++-16
65+ sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-16 100 \
66+ --slave /usr/bin/g++ g++ /usr/bin/g++-16
67+
68+ - name : Install Clang 22 + libc++
69+ if : matrix.compiler == 'clang-22+libc++'
70+ run : |
71+ wget -q https://apt.llvm.org/llvm.sh
72+ sudo bash llvm.sh 22 all
73+ sudo update-alternatives --install /usr/bin/clang clang /usr/bin/clang-22 100 \
74+ --slave /usr/bin/clang++ clang++ /usr/bin/clang++-22
6075
6176 - name : Install Ninja
6277 if : runner.os == 'Linux'
0 commit comments