Require GCC11 for full C++20 support
Open
enhancement
packaging
testing
- Dominant language
- C++
- Stars
- 145
- Forks
- 47
- Avg merge
- 3h 5m
- Merged PRs (30d)
- 8
Description
There are quite a few C++20 features that are only supported in GCC11 and above, e.g. `using enum` would be a big one for code readability in basix.
Currently we are using `ubuntu-20.04` and GCC10 GitHub runners (i.e. no Docker) for `pythonapp.yml`: https://github.com/FEniCS/basix/blob/main/.github/workflows/pythonapp.yml
I would propose:
- Moving to running the tests in `pythonapp.yml` inside a plain Ubuntu Docker container so that the dependancy surface is minimal and well-controlled.
- Switching to GCC11 so that we can use a full C++20 feature set.
Contributor guide
Assessment
This issue has not been assessed yet.