C++29 컴파일러 지원
cppreference.net에서
* - 별표가 표시된 셀에 마우스를 올리면 * 추가 팝업 노트를 볼 수 있습니다.
\nDRnn - 숫자 nn 은 \"DR\" 다음의 대상 C++ 개정판을 나타냅니다. 예: DR20 → C++20.
C++29 핵심 언어 기능
| C++29 기능 |
논문 |
GCC |
Clang |
MSVC |
Apple Clang |
EDG eccp |
Intel C++ |
Nvidia HPC C++ (ex PGI)* |
Nvidia nvcc |
Cray |
|
|---|---|---|---|---|---|---|---|---|---|---|---|
#embed 오프셋 매개변수 (FTM)*
|
P3540R3 | ||||||||||
| 계약에 대한 가상 함수 (FTM)* | P3097R3 | ||||||||||
| 팩 인덱싱 템플릿에 대한 (FTM)* | P3670R4 | ||||||||||
| 지정 초기화자 기본 클래스에 대한 (FTM)* | P2287R6 | ||||||||||
| 예외 명세를 던지는 해제 함수는 형식이 잘못되었습니다. | P3424R2 | ||||||||||
| 조건부 noexcept 지정자 ( 복합 요구 사항 (FTM)* | P3822R2 | ||||||||||
| 접미사 증감 연산자 함수의 기본화 | P3668R4 | ||||||||||
| 기본 대입 연산자 함수에 대한 제한 추가 | P2953R5 | ||||||||||
| DR26: consteval 전용 값 (FTM)* | P4101R1 | ||||||||||
| DR23: 피그먼트 및 약어 허용 ( 명명된 유니버설 문자 이스케이프 | P3733R1 | ||||||||||
| DR20: 상호 배타성 제거 ( 코루틴 프로미스 반환 함수 (FTM)* | P3950R1 | ||||||||||
| DR: 새로운 유니코드 권장 사항에 따른 식별자 조정 | P3658R1 | ||||||||||
| DR: 명시적 람다 캡처는 어휘 순서로 선언 및 초기화됩니다 | P3847R1 | 3.1 | |||||||||
| DR: 템플릿에 C 언어 링크 허용 | P2243R0 | ||||||||||
| DR: 부동소수점 오버플로우 동작 명확화 | P3899R3 | ||||||||||
| DR: 비결정적 포인터 출처 | P2434R5 | ||||||||||
| DR: 원자 및 휘발성 접근에 대한 포인터 수명 종료 해소 | P2414R12 | ||||||||||
| DR: 유효하지 않은 포인터에 대한 로드 및 저장 연산 정의 | P3347R6 | ||||||||||
| C++29 기능 |
논문 |
GCC |
Clang |
MSVC |
Apple Clang |
EDG eccp |
Intel C++ |
Nvidia HPC C++ (ex PGI)* |
Nvidia nvcc |
Cray |
C++29 라이브러리 기능
| C++29 기능 |
논문 |
GCC libstdc++ |
Clang libc++ |
MSVC STL |
Apple Clang* |
|
|---|---|---|---|---|---|---|
| 맵 컨테이너를 위한 향상된 검색 함수 (FTM)* | P3091R6 | |||||
| 포인터 태깅 (FTM)* | P3125R6 | |||||
| 스레드 속성 (FTM)* | P2019R9 | |||||
| 해저드 포인터 배치 (FTM)* | P3428R4 | |||||
| 비트 순열 (FTM)* (FTM)* | P3104R6 P3772R2 |
|||||
| std::shl 및 std::shr (FTM)* (FTM)* | P3793R2 | |||||
| std::mdspan 복사 및 채우기 연산 (FTM)* | P3242R4 | |||||
| std::simd::iota (FTM)* | P3319R6 | |||||
| std::expected::has_error() (FTM)* | P3798R1 | |||||
| view_interface::at() (FTM)* | P3052R2 | |||||
| std::formatter<std::error_code> | P3395R6 | |||||
| 기본 부동소수점 표현 수정 ( std::to_chars (FTM)* | P3505R4 | |||||
| 요구 ( std::intptr_t 및 std::uintptr_t | P3248R5 | |||||
| I/O 스트림에서 부호 있는 문자 타입 폐지 | P3154R3 | |||||
| DR26: 문자열 리터럴 지원 복구 ( std::constant_wrapper (FTM)* | P4206R0 | 17 | ||||
| C++29 기능 |
논문 |
GCC libstdc++ |
Clang libc++ |
MSVC STL |
Apple Clang* |