The relevant policies are described at https://opensource.google/documentation/policies/cplusplus-support. This document captures the specific version numbers as resolved by those policies.
Note that some of these version supports apply broadly to other languages as well, and are not exclusive to C++.
| Distribution | Supported Version | Last Changed | Next Change 1 |
|---|---|---|---|
| Alpine | >= 3.21 | 2026-04-01 | 2026-11-01 |
| Debian | >= 13 | 2026-08-10 | 2028-08-09 |
| Fedora | >= 42 | 2025-12-16 | 2026-05-13 |
| openSUSE | >= Leap 16.0 | 2026-05-01 | 2027-10-31 |
| Ubuntu LTS | >= 22.04 | 2025-06-04 | 2027-05-01 |
| RHEL | >= 9 | 2024-07-01 | 2027-06-01 |
| RockyLinux | >= 9 | 2024-07-01 | 2027-06-01 |
| Dimension | Supported Version | Last Changed | Next Change 1 |
|---|---|---|---|
| Windows Server | >= 2022 | 2024-01-22 | 2026-10-13 |
| Windows Client | >= 11 | 2025-12-16 | 2026-05-13 |
| Dimension | Supported Version | Last Changed | Next Change 1 |
|---|---|---|---|
| Xcode | >= 26 | 2025-09-15 | 2026-09-15 |
| macOS (target) | >= 12 (Monterey) | 2025-12-16 | 2026-07-01 |
| iOS (target) | >= 15 | 2025-12-16 | 2026-09-15 |
| Dimension | Supported Version | Last Changed | Next Change 1 |
|---|---|---|---|
| Android API (target) | >= 21 | 2022-09-18 |
| Dimension | Supported Version | Last Changed | Next Change 1 |
|---|---|---|---|
| C++ Version | >= 17 | 2024-12-17 | 2027-12-15 |
| CMake | >= 3.22 | 2025-06-04 | 2027-05-01 2 |
| Bazel | 8 LTS | 2025-12-16 | 2026-12-01 |
| GCC | >= 10 | 2026-05-01 | 2026-06-30 3 |
| Clang | >= 14.0.0 | 2025-06-04 | 2027-05-01 4 |
| MSVC | >= 2022 | 2024-04-29 | 2027-01-12 |
| Apple Clang | >= 17 | 2025-12-19 | 2026-07-01 |
| glibc | >= 2.34 | 2024-07-09 | 2027-06-01 5 |
| musl | >= 1.2.5 | 2026-04-01 | 2026-11-01 |
Footnotes
-
This is an estimated date. The actual date may change if the vendor (or community, as applicable) extends or shortens the lifetime of the dimension in question. ↩ ↩2 ↩3 ↩4 ↩5
-
We support the oldest version of CMake that ships with one of the supported distros. Currently that is CMake 3.22 as Ubuntu 22.04 ships with this version. ↩
-
We support the oldest version of GCC that ships with one of the supported distros. Currently that is GCC 10 as Debian 11 ships with this version. ↩
-
We support the oldest version of Clang that ships with one of the supported distros. Currently that is Clang 14.0 as Ubuntu 22.04 ships with this version. ↩
-
We support the oldest version of glibc shipping with any of our supported distros. Currently that is glibc 2.34 shipping with RHEL 9 and RockyLinux 9. Internally, we currently support glibc 2.27 and may have code referencing that. We do not guarantee that it will work though. ↩