Skip to content

Commit c792c47

Browse files
committed
Require C++20 in CI
1 parent a4ce67c commit c792c47

File tree

3 files changed

+13
-20
lines changed

3 files changed

+13
-20
lines changed

.github/workflows/build.yml

Lines changed: 11 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -24,12 +24,6 @@ jobs:
2424
matrix:
2525
include:
2626
# GCC builds
27-
- {os: ubuntu-20.04, compiler: gcc, version: '7',
28-
flags: '-Wsuggest-override'}
29-
- {os: ubuntu-20.04, compiler: gcc, version: '8',
30-
flags: '-Wsuggest-override'}
31-
- {os: ubuntu-latest, compiler: gcc, version: '9',
32-
flags: '-Wsuggest-override'}
3327
- {os: ubuntu-latest, compiler: gcc, version: '10',
3428
flags: '-Wsuggest-override'}
3529
- {os: ubuntu-latest, compiler: gcc, version: '11',
@@ -38,35 +32,34 @@ jobs:
3832
flags: '-Wsuggest-override'}
3933
- {os: ubuntu-latest, compiler: gcc, version: '13',
4034
flags: '-Wsuggest-override'}
35+
- {os: ubuntu-24.04, compiler: gcc, version: '14',
36+
flags: '-Wsuggest-override'}
4137

4238
# Clang builds
43-
- {os: ubuntu-20.04, compiler: clang, version: '9'}
4439
- {os: ubuntu-20.04, compiler: clang, version: '10'}
4540
- {os: ubuntu-20.04, compiler: clang, version: '11'}
4641
- {os: ubuntu-20.04, compiler: clang, version: '12'}
4742
- {os: ubuntu-latest, compiler: clang, version: '13'}
4843
- {os: ubuntu-latest, compiler: clang, version: '14'}
4944
- {os: ubuntu-latest, compiler: clang, version: '15'}
5045
- {os: ubuntu-latest, compiler: clang, version: '16'}
46+
- {os: ubuntu-latest, compiler: clang, version: '17'}
47+
- {os: ubuntu-latest, compiler: clang, version: '18'}
5148

5249
# Windows builds
53-
- {os: windows-2019, compiler: msvc, version: '14.1', # VS 2017
54-
boost-version: '1.80.0'}
55-
- {os: windows-2019, compiler: msvc, version: '14.2', # VS 2019
56-
boost-version: '1.80.0'}
5750
- {os: windows-latest, compiler: msvc, version: '14.4', # VS 2022
5851
boost-version: '1.80.0'}
5952

6053
# macOS builds
6154
- {os: macos-latest, compiler: clang}
6255

63-
# C++20 builds
64-
- {os: ubuntu-latest, compiler: gcc, version: '13',
65-
common-options: '--std=c++20', flags: '-Wsuggest-override',
66-
boost-version: '1.78.0', extra-desc: 'c++20'}
67-
- {os: ubuntu-latest, compiler: clang, version: '16',
68-
common-options: '--std=c++20', boost-version: '1.78.0',
69-
extra-desc: 'c++20'}
56+
# C++23 builds
57+
- {os: ubuntu-24.04, compiler: gcc, version: '14',
58+
common-options: '--std=c++23', flags: '-Wsuggest-override',
59+
boost-version: '1.85.0', extra-desc: 'c++23'}
60+
- {os: ubuntu-latest, compiler: clang, version: '18',
61+
common-options: '--std=c++23', boost-version: '1.85.0',
62+
extra-desc: 'c++23'}
7063
fail-fast: false
7164

7265
steps:

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ library for serializing data from your program.
1212

1313
This library has no external dependencies and only requires a C++17 compiler.
1414
It's been tested on [Clang][clang] 7+, [GCC][gcc] 7+, and [MSVC][msvc] 2017+.
15-
The unit tests do depend on [mettle][mettle], however.
15+
The unit tests do depend on [mettle][mettle] and a C++20 compiler, however.
1616

1717
**Note:** if Boost is installed, bencode.hpp will provide the ability to use
1818
[`boost::variant`](#boostvariant), which can perform significantly better than

options.bfg

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
11
# -*- mode: python; mode: bfg9000-options -*-
22

3-
argument('std', default='c++17', help='set the C++ standard to compile with')
3+
argument('std', default='c++20', help='set the C++ standard to compile with')

0 commit comments

Comments
 (0)