C++23

C++23, 공식적으로 ISO/IEC 14882:2024,는 C++20에 이어지는 C++ 프로그래밍 언어의 현재 개방형 표준이다. 이 버전의 최종 초안은 N4950이다.

2020년 2월, 프라하에서 열린 C++20 최종 회의에서 C++23에 대한 전체 계획이 채택되었다. C++23의 계획된 기능은 코루틴을 위한 라이브러리 지원, 모듈화된 표준 라이브러리, 실행자(executor), 네트워킹이었다.

C++23에 초점을 맞춘 첫 WG21 회의는 2020년 6월 초 바르나에서 열릴 예정이었으나, 코로나19 범유행으로 인해 취소되었다. 2020년 11월 뉴욕 회의와 2021년 2월 코나(Kona) 회의도 마찬가지였다. 2022년 11월까지 모든 회의는 가상으로 진행되었고, 2022년 11월 회의부터 2023년 2월 최종 회의까지는 하이브리드 형식으로 진행되었다. 이 표준은 2023년 2월 이서콰에서 열린 하이브리드 회의에서 WG21에 의해 기술적으로 최종 확정되었다.

현대적인 "Hello, world" 예제

작업 초안에 많은 라이브러리 변경 사항이 적용된 후, 새로운 "Hello, world" 프로그램은 다음과 같다.

import std;

int main() {
    std::println("Hello, world!");
}

기능

C++23에 승인된 변경 사항은 다음과 같다.

언어

라이브러리

표준 라이브러리 모듈 지원

  • 표준 라이브러리 모듈 std 및 std.compat

코루틴 라이브러리 지원

  • 범위에 대한 동기식 코루틴 std::generator

일반 유틸리티 지원

  • 결과 타입 std::expected
  • std::optional 및 std::expected을 위한 모나드 연산
  • enum의 기본 값을 가져오는 유틸리티 함수 std::to_underlying
  • 이동 전용 호출 가능 래퍼 std::move_only_function
  • std::forward_like
  • std::invoke_r
  • std::bind_back
  • std::byteswap
  • std::unreachable: 접근할 수 없는 코드를 표시하는 함수
  • std::tuple을 다른 튜플 유사 객체와 호환 가능하게 만들었다.
  • 참조 타입을 반환하는 std::reference_wrapper에 대한 std::basic_common_reference 특수화 추가
  • std::pair의 전달 생성자에 대한 기본 인자 추가

컴파일 시간 지원

  • constexpr 지원:
    • std::type_info::operator==
    • std::bitset
    • std::unique_ptr
    • 일부 <cmath> 함수
    • std::to_chars 및 std::from_chars의 정수 오버로드
  • 메타프로그래밍 유틸리티:
    • 타입 트레잇 std::is_scoped_enum, std::is_implicit_lifetime, std::reference_constructs_from_temporary, 및 std::reference_converts_from_temporary.
  • 비교 개념에 대한 이동 전용 타입 지원 추가

이터레이터, 범위 및 알고리즘 지원

  • 새로운 범위 변환 함수 std::ranges::to
  • 새로운 제약이 있는 범위 알고리즘:
    • std::ranges::starts_with
    • std::ranges::ends_with
    • std::ranges::contains
    • std::ranges::contains_subrange
    • std::ranges::find_last 및 기타 변형
    • iota, shift_left 및 shift_right의 범위화된 버전
    • 범위 폴드 알고리즘
  • 새로운 std::ranges::range_adaptor_closure, 사용자 정의 범위 어댑터 클로저를 정의하기 위한 헬퍼
  • 새로운 범위 어댑터:
    • std::views::zip 및 기타 변형
    • std::views::adjacent 및 기타 변형
    • std::views::join_with
    • std::views::slide
    • std::views::chunk
    • std::views::chunk_by
    • std::views::as_rvalue
    • std::views::as_const
    • std::views::repeat
    • std::views::stride
    • std::views::cartesian_product
    • std::views::enumerate
  • 상수 이터레이터, 센티넬 및 범위를 수정하여 std::ranges::cbegin 및 기타 유사 유틸리티가 얕은 상수 뷰(예: std::span)의 경우에도 상수 이터레이터를 반환하도록 완전히 보장한다.
  • 비범위 알고리즘의 입력으로 범위 이터레이터
  • 이동 전용 타입을 허용하도록 범위 어댑터 완화
  • 일부 뷰의 다중 매개변수 생성자를 explicit으로 만들었다.

메모리 관리 지원

  • C 상호 운용성을 위한 std::out_ptr 및 std::inout_ptr
  • std::allocate_at_least 및 std::allocator::allocate_at_least
  • 암시적 수명 타입에 대한 명시적 수명 관리 함수 std::start_lifetime_as
  • std::allocator_traits의 사용자 특수화 금지

문자열 및 텍스트 처리 지원

  • 새로운 멤버 함수 및 문자열 타입의 변경 사항:
    • std::basic_string_view::contains 및 std::basic_string::contains
    • std::basic_string 및 std::basic_string_view에 대한 nullptr로부터의 생성 비활성화
    • std::basic_string_view에 대한 명시적 범위 생성자
    • std::basic_string::resize_and_overwrite
    • 효율적인 슬라이싱을 위한 std::basic_string::substr의 rvalue 참조 오버로드
  • 범위, 튜플, 문자 및 문자열의 이스케이프된 표현, std::thread::id 및 스택 트레이스 포매팅.

진단 지원

  • 스택 트레이스 라이브러리

I/O 지원

  • 새로운 헤더 <print>에서 가져온 서식 있는 출력 함수 std::print 및 std::println
  • 새로운 헤더 <spanstream>에서 가져온 spanstream 라이브러리(std::span 기반 문자열 스트림)
  • std::fstream에서 독점 모드 지원
  • std::basic_ostream::operator<<(const volatile void*)

컨테이너 지원

  • 다차원-스팬 std::mdspan
  • 다른 호환 가능한 범위로부터의 컨테이너 생성 가능성 및 할당 가능성
  • 평면 집합 및 평면 맵 컨테이너 어댑터
  • 컨테이너 추론 가이드에서 할당자를 위한 비추론 컨텍스트
  • 연관 컨테이너에 대한 이기종 삭제 오버로드
  • 스택 및 큐에서 이터레이터 쌍 생성 허용
  • std::span 및 std::basic_string_view가 사소하게 복사 가능해야 함을 요구

C 호환성 지원

  • 새로운 헤더 <stdatomic.h>

언어 결함 보고서

라이브러리 결함 보고서

제거된 기능 및 폐기

제거된 기능:

폐기된 기능:

복원된 폐기된 기능:

기술 사양으로 발행됨

컴파일러 지원

역사

대면 WG21 회의가 없는 상황에서, 다음 변경 사항들은 여러 가상 WG21 회의 후 적용되었으며, 여기서 여론조사(straw poll)를 통해 승인되었다.

2020년 11월

2020년 11월 9일 가상 WG21 회의 후 다음 사항들이 추가되었으며, 여론조사를 통해 승인되었다.

2021년 2월

2021년 2월 22일 가상 WG21 회의 후, 다음 기능들이 추가되었으며 여론조사를 통해 승인되었다.

2021년 6월

2021년 6월에 열린 여름 ISO C++ 표준 본회의 가상 회의 후, 새로운 기능과 결함 보고서가 여론조사를 통해 승인되었다.

2021년 10월

2021년 10월에 열린 2021년 가을 ISO C++ 표준 본회의 가상 회의 후, 새로운 기능과 결함 보고서가 여론조사를 통해 승인되었다.

2022년 2월

2022년 2월 7일 가상 WG21 회의 후, 다음 기능들이 추가되었으며 여론조사를 통해 승인되었다.

2022년 7월

2022년 7월 25일 가상 WG21 회의 후, 다음 기능 및 결함 보고서가 추가되었으며 여론조사를 통해 승인되었다.

2022년 11월

2022년 11월 7일 하이브리드 WG21 회의 후, 다음 기능 및 결함 보고서가 추가되었으며 여론조사를 통해 승인되었다.

2023년 2월

2023년 2월 6일부터 11일까지 열린 최종 하이브리드 WG21 회의 후, 다음 기능 및 결함 보고서가 추가되었으며 여론조사를 통해 승인되었다.

같이 보기

각주

  1. ↑ “ISO/IEC 14882:2024 Programming languages — C++”. 《iso.org》.
  2. ↑ “Working Draft, Standard for Programming Language C++” (PDF). 《Open Standards》. ISO/IEC. 2023년 5월 10일. 2024년 2월 16일에 원본 문서 (PDF)에서 보존된 문서.
  3. ↑ “N4951 Editors' Report: Programming Languages - C++”. 《Open Standards》. 2023년 5월 10일. 2023년 6월 5일에 원본 문서에서 보존된 문서.
  4. ↑ Dusíková, Hana (2019년 11월 6일). “N4817: 2020 Prague Meeting Invitation and Information” (PDF). 《Open Standards》. 2019년 12월 29일에 원본 문서 (PDF)에서 보존된 문서. 2020년 2월 13일에 확인함.
  5. ↑ Voutilainen, Ville (2019년 11월 25일). “To boldly suggest an overall plan for C++23”. 《Open Standards》. 2019년 12월 24일에 원본 문서에서 보존된 문서. 2020년 2월 13일에 확인함.
  6. ↑ Lelbach, Bryce Adelstein; Winters, Titus; Fracassi, Fabio; Baker, Billy; Liber, Nevin; Bastien, JF; Stone, David; Ballo, Botond; Keane, Erich; Honermann, Tom (2020년 4월 20일). “P2145R0: Evolving C++ Remotely”. 《Open Standards》. 2024년 2월 12일에 원본 문서에서 보존된 문서.
  7. 1 2 Sutter, Herb (2020년 7월 29일). “Business Plan and Convener's Report: ISO/IEC JTC1/SC22/WG21 (C++)” (PDF).
  8. 1 2 3 “Upcoming Meetings, Past Meetings : Standard C++”. 《isocpp.org》.
  9. ↑ “C++23 "Pandemic Edition" is complete (Trip report: Winter ISO C++ standards meeting, Issaquah, WA, USA)”. 《herbsutter.com》. 2023년 2월 13일.
  10. ↑ Gašper Ažman; Sy Brand; Ben Deane; Barry Revzin (2021년 7월 12일). “Deducing this”.
  11. ↑ Barry Revzin; Richard Smith; Andrew Sutton; Daveed Vandevoorde (2021년 3월 22일). “if consteval”.
  12. ↑ Mark Hoemmen; Daisy Hollman; Corentin Jabot; Isabella Muerte; Christian Trott (2021년 9월 14일). “Multidimensional subscript operator” (PDF).
  13. ↑ “static operator()”. 2022년 4월 8일.
  14. ↑ “static operator[]” (PDF). 2022년 11월 11일.
  15. ↑ “Simpler implicit move”. 2022년 3월 23일.
  16. ↑ Zhihao Yuan (2021년 7월 12일). “auto(x): decay-copy in the language”.
  17. ↑ Melanie Blower (2021년 4월 30일). “Add support for preprocessing directives elifdef and elifndef” (PDF).
  18. ↑ Aaron Ballman (2022년 1월 13일). “Support for #warning” (PDF).
  19. ↑ “Wording for P2644R1 Fix for Range-based for Loop”. 2022년 11월 11일.
  20. ↑ “Portable assumptions” (PDF). 2022년 4월 22일.
  21. ↑ Timur Doumler (2022년 5월 20일). “Wording for class template argument deduction from inherited constructors” (PDF).
  22. ↑ “Labels at the end of compound statements (C compatibility)” (PDF). 2022년 1월 13일.
  23. ↑ Jens Maurer (2021년 4월 13일). “Extend init-statement to allow alias-declaration”.
  24. ↑ JeanHeyd Meneide; Rein Halbersma (2019년 11월 24일). “Literal Suffix for (signed) size_t”.
  25. ↑ “Extended floating-point types and standard names”. 2022년 4월 22일.
  26. ↑ Alex Christensen; JF Bastien (2020년 12월 11일). “P1102R2: Down with ()!”.
  27. ↑ “Attributes on Lambda-Expressions” (PDF).
  28. ↑ Ville Voutilainen (2021년 7월 12일). “Non-literal variables (and labels and gotos) in constexpr functions”.
  29. ↑ “Permitting static constexpr variables in constexpr functions”. 2022년 11월 7일.
  30. ↑ “Relaxing some constexpr restrictions”. 2022년 1월 27일.
  31. ↑ Andrzej Krzemieński (2021년 4월 12일). “Narrowing contextual conversions to bool”.
  32. ↑ Corentin Jabot (2021년 4월 13일). “Trimming whitespaces before line splicing” (PDF).
  33. ↑ Pal Balog (2021년 4월 2일). “Make declaration order layout mandated” (PDF).
  34. ↑ “Delimited escape sequences” (PDF). 2022년 2월 25일.
  35. ↑ “Named universal character escapes”. 2022년 3월 25일.
  36. ↑ “Support for UTF-8 as a portable source file encoding” (PDF). 2022년 7월 1일.
  37. ↑ Corentin Jabot (2021년 9월 14일). “Consistent character literal encoding” (PDF).
  38. ↑ Jens Maurer (2021년 9월 21일). “Character sets and encodings”.
  39. ↑ “C++ keywords - cppreference.com”. 《en.cppreference.com》. 2025년 7월 27일에 확인함.
  40. ↑ “Standard Library Modules std and std.compat” (PDF).
  41. ↑ “(std::generator: Synchronous Coroutine Generator for Ranges)” (PDF).
  42. ↑ Vicente Botet; JF Bastien; Jonathan Wakely (2022년 1월 7일). “std::expected”.
  43. ↑ Sy Brand (2021년 4월 27일). “Monadic operations for std::optional”.
  44. ↑ Jeff Garland (2022년 9월 28일). “P2505R5 Monadic Functions for std::expected”.
  45. ↑ JeanHeyd Meneide (2021년 1월 22일). “std::to_underlying for enumerations”.
  46. ↑ Matt Calabrese; Ryan McDougall (2021년 7월 9일). “move_only_function”.
  47. ↑ Gašper Ažman (2022년 5월 13일). “std::forward_like” (PDF).
  48. ↑ Zhihao Yuan (2020년 4월 29일). “invoke_r”.
  49. 1 2 Barry Revzin (2021년 12월 17일). “Pipe support for user-defined range adaptors”.
  50. ↑ Isabella Muerte; Corentin Jabot (2021년 9월 17일). “Byteswapping for fun&&nuf”.
  51. ↑ Melissa Mears; Jens Maurer (2021년 10월 15일). “Function to mark unreachable code” (PDF).
  52. ↑ Corentin Jabot (2022년 7월 15일). “Compatibility between tuple, pair and tuple-like objects” (PDF).
  53. ↑ Hui Xie; S. Levent Yilmaz; Tim Song (2023년 2월 7일). “common_reference_t of reference_wrapper Should Be a Reference Type”.
  54. ↑ “Wording for P2644R1 Fix for Range-based for Loop”. 2022년 11월 11일.
  55. ↑ Peter Dimov (2021년 5월 1일). “Making std::type_info::operator== constexpr”.
  56. ↑ Daniil Goncharov (2022년 6월 25일). “A more constexpr bitset” (PDF).
  57. ↑ Andreas Fertig (2021년 11월 6일). “Making std::unique_ptr constexpr” (PDF).
  58. ↑ Edward J. Rosten; Oliver J. Rosten (2021년 11월 12일). “constexpr for <cmath> and <cstdlib>” (PDF).
  59. ↑ Daniil Goncharov; Alexander Karaev (2021년 9월 18일). “Add Constexpr Modifiers to Functions to_chars and from_chars for Integral Types in <charconv> Header” (PDF).
  60. ↑ Juan Alday (2020년 10월 12일). “A proposal for a type trait to detect scoped enumerations” (PDF).
  61. ↑ Timur Doumler; Vittorio Romeo (2022년 11월 11일). “A trait for implicit lifetime types” (PDF).
  62. ↑ Tim Song (2021년 10월 13일). “A type trait to detect reference binding to temporary”.
  63. ↑ Justin Bassett (2022년 7월 2일). “Move-only types for equality_comparable_with, totally_ordered_with, and three_way_comparable_with” (PDF).
  64. 1 2 Corentin Jabot; Eric Niebler; Casey Carter (2022년 1월 21일). “Conversions from ranges to containers” (PDF).
  65. ↑ Christopher Di Bella (2021년 2월 19일). “starts_with and ends_with”.
  66. ↑ Christopher Di Bella (2021년 4월 16일). “std::ranges::contains”.
  67. ↑ Zach Laine (2022년 6월 17일). “find_last” (PDF).
  68. ↑ Tim Song (2021년 12월 5일). “ranges::iota, ranges::shift_left, and ranges::shift_right”.
  69. ↑ Barry Revzin (2022년 4월 22일). “ranges::fold”.
  70. ↑ Tim Song (2021년 6월 11일). “zip”.
  71. ↑ Barry Revzin (2022년 1월 28일). “views::join_with”.
  72. ↑ Tim Song (2021년 12월 5일). “Windowing range adaptors: views::chunk and views::slide”.
  73. ↑ Tim Song (2021년 11월 19일). “views::chunk_by”.
  74. ↑ Barry Revzin (2022년 2월 14일). “views::as_rvalue”.
  75. 1 2 Barry Revzin (2022년 6월 17일). “cbegin should always return a constant iterator”.
  76. ↑ Michał Dominiak (2022년 7월 13일). “views::repeat”.
  77. ↑ Christopher Di Bella; Tim Song (2022년 7월 8일). “stride_view”.
  78. ↑ Sy Brand; Michał Dominiak (2022년 7월 13일). “views::cartesian_product”.
  79. ↑ Corentin Jabot (2022년 12월 7일). “views::enumerate” (PDF).
  80. ↑ David Olsen (2022년 4월 22일). “Ranges iterators as inputs to non-Ranges algorithms”.
  81. ↑ Michał Dominiak (2022년 7월 13일). “Relaxing range adaptors to allow for move only types”.
  82. ↑ Ville Voutilainen (2022년 11월 12일). “Making multi-param constructors of views explicit”.
  83. ↑ JeanHeyd Meneide; Todor Buyukliev; Isabella Muerte (2021년 4월 15일). “out_ptr - a scalable output pointer abstraction”.
  84. ↑ Jonathan Wakely; Chris Kennelly (2021년 1월 22일). “Providing size feedback in the Allocator interface”.
  85. ↑ Timur Doumler; Richard Smith (2022년 7월 15일). “Explicit lifetime management” (PDF).
  86. ↑ Pablo Halpern (2023년 2월 8일). “Disallow User Specialization of allocator_traits”.
  87. ↑ Wim Leflere; Paul Fee (2020년 6월 13일). “string contains function”.
  88. ↑ Yuriy Chernyshov (2020년 9월 6일). “A Proposal to Prohibit std::basic_string and std::basic_string_view construction from nullptr.”.
  89. ↑ Corentin Jabot (2021년 3월 17일). “Range constructor forstd::string_view 2: Constrain Harder” (PDF).
  90. ↑ Chris Kennelly; Mark Zeren (2021년 9월 14일). “basic_string::resize_and_overwrite”.
  91. ↑ “std::string::substr() &&”.
  92. ↑ “Formatting Ranges”. 2022년 5월 16일.
  93. ↑ Barry Revzin (2022년 7월 15일). “Improve default container formatting”.
  94. ↑ Corentin Jabot; Victor Zverovich (2023년 2월 9일). “Formatting thread::id and stacktrace” (PDF).
  95. ↑ Alexey Gorgurov; Antony Polukhin (2020년 9월 16일). “A Proposal to add stacktrace library”.
  96. ↑ “Formatted output”.
  97. ↑ Peter Sommerlad (2021년 2월 26일). “A strstream replacement using span<charT> as buffer” (PDF).
  98. ↑ “Support exclusive mode for fstreams”.
  99. ↑ Bryce Adelstein Lelbach (2021년 9월 25일). “Printing volatile Pointers”.
  100. ↑ “MDSPAN”. 2022년 7월 13일.
  101. ↑ “index_type & size_type in mdspan” (PDF).
  102. ↑ “mdspan: rename pointer and contiguous”. 2022년 6월 15일.
  103. ↑ “Add the missing empty to mdspan”.
  104. ↑ “A Standard flat_map” (PDF).
  105. ↑ “A Standard flat_set” (PDF).
  106. ↑ Arthur O'Dwyer; Mike Spertus (2021년 3월 14일). “Stop overconstraining allocators in container deduction guides”.
  107. ↑ Konstantin Boyarinov; Sergey Vinogradov; Ruslan Arutyunyan (2020년 12월 15일). “Heterogeneous erasure overloads for associative containers”.
  108. ↑ Corentin Jabot (2021년 3월 5일). “Iterators pair constructors for stack and queue” (PDF).
  109. ↑ Nevin Liber (2021년 3월 19일). “Require span & basic_string_view to be TriviallyCopyable” (PDF).
  110. ↑ Hans-J. Boehm (2020년 10월 23일). “P0943R6: Support C atomics in C++”.
  111. ↑ Steve Downey; Zach Laine; Tom Honermann; Peter Bindels; Jens Maurer (2021년 4월 12일). “C++ Identifier Syntax using Unicode Standard Annex 31”.
  112. ↑ Erich Keane (2020년 7월 2일). “Allow Duplicate Attributes” (PDF).
  113. ↑ Barry Revzin (2021년 9월 14일). “Change scope of lambda trailing-return-type”.
  114. ↑ “The Equality Operator You Are Looking For”. 2022년 1월 13일.
  115. ↑ “De-deprecating volatile compound operations” (PDF).
  116. ↑ “Core Language Working Group NB comment resolutions for the November, 2022 meeting : 2654. Un-deprecation of compound volatile assignments”.
  117. ↑ “char8_t Compatibility and Portability Fix”. 2022년 6월 17일.
  118. ↑ “Relax requirements on wchar_t to match existing practices” (PDF). 2022년 7월 15일.
  119. ↑ “Using unknown pointers and references in constant expressions”. 2022년 4월 8일.
  120. ↑ “consteval needs to propagate up”. 2022년 11월 11일.
  121. ↑ Barry Revzin (2020년 2월 19일). “Conditionally borrowed ranges”.
  122. ↑ Tim Song (2021년 1월 12일). “Repairing input range adaptors and counted_iterator”.
  123. ↑ Tim Song (2021년 5월 6일). “join_view should join all views of ranges”.
  124. ↑ Barry Revzin (2021년 3월 5일). “Superior String Splitting”.
  125. ↑ Barry Revzin (2021년 5월 14일). “Views should not be required to be default constructible”.
  126. ↑ Barry Revzin; Tim Song (2021년 8월 15일). “What is a view?”.
  127. ↑ Nicolai Josuttis (2021년 9월 24일). “Fix istream_view” (PDF).
  128. ↑ Barry Revzin (2022년 1월 18일). “Expose std::basic-format-string<charT, Args...>”.
  129. ↑ Victor Zverovich (2021년 2월 5일). “std::format improvements”.
  130. ↑ Victor Zverovich; Corentin Jabot (2021년 9월 11일). “Fixing locale handling in chrono formatters”.
  131. ↑ Corentin Jabot (2022년 12월 2일). “format's width estimation is too approximate and not forward compatible” (PDF).
  132. ↑ Tom Honermann (2023년 2월 8일). “std::format() fill character allowances”.
  133. ↑ Victor Zverovich (2021년 9월 24일). “Add support for std::generator-like types to std::format”.
  134. ↑ Barry Revzin (2021년 2월 11일). “Missing constexpr in std::optional and std::variant”.
  135. ↑ Barry Revzin (2020년 10월 30일). “Inheriting from std::variant”.
  136. ↑ “std::pointer_safety - cppreference.com”. 《en.cppreference.com》. 2024년 12월 9일에 확인함.
  137. ↑ “[basic.stc.dynamic.safety]”. 《timsong-cpp.github.io》. 2024년 12월 9일에 확인함.
  138. ↑ JF Bastien; Alisdair Meredith (2021년 4월 16일). “Removing Garbage Collection Support”.
  139. ↑ Jens Maurer (2021년 4월 12일). “Mixed string literal concatenation”.
  140. ↑ “Remove non-encodable wide character literals and multicharacter wide character literals” (PDF).
  141. ↑ CJ Johnson (2021년 11월 22일). “Deprecate std::aligned_storage and std::aligned_union” (PDF).
  142. ↑ Matthias Kretz (2022년 11월 8일). “Deprecate numeric_limits::has_denorm” (PDF).
  143. ↑ “Programming Languages — Technical specification for C++ extensions for concurrency 2” (PDF).
  144. ↑ “C++ Support in Clang”.
  145. ↑ “C++ Standards Support in GCC - GNU Project”.
  146. ↑ Ranns, Nina (2020년 11월 19일). “WG21 2020-11 Virtual Meeting: Minutes of Meeting” (PDF).
  147. ↑ Ranns, Nina (2021년 2월 22일). “WG21 2021-02 Virtual Meeting: Minutes of Meeting” (PDF).
  148. ↑ Alexey Dmitriev; Howard Hinnant (2020년 10월 22일). “Relax Requirements for time_point::clock”.
  149. ↑ Tim Song (2020년 11월 13일). “Locks lock lockables”.
  150. ↑ Ranns, Nina (2021년 6월 7일). “WG21 2021-06 Virtual Meeting Minutes of Meeting” (PDF).
  151. ↑ Ranns, Nina (2021년 10월 4일). “WG21 2021-10 Virtual Meeting Minutes of Meeting” (PDF).
  152. ↑ “GCC 12 Adds Support For New #elifdef #elifndef Directives”. 《phoronix》. 2021년 5월 12일. 2022년 12월 27일에 원본 문서에서 보존된 문서.
  153. ↑ Steve Downey (2021년 6월 14일). “Add a pmr alias for std::stacktrace”.
  154. ↑ Giuseppe D'Angelo (2021년 6월 28일). “Add a conditional noexcept specification to std::exchange”.
  155. ↑ Tim Song (2021년 8월 6일). “Cleaning up integer-class types”.
  156. ↑ Thomas Köppe (2021년 6월 11일). “Clarifying the status of the "C headers"”.
  157. ↑ Ranns, Nina (2022년 2월 7일). “WG21 2022-02 Virtual Meeting: Minutes of Meeting” (PDF).
  158. ↑ Ranns, Nina (2022년 8월 9일). “WG21 2022-07 Virtual Meeting: Minutes of Meeting” (PDF).
  159. ↑ Ranns, Nina (2022년 12월 5일). “WG21 2022-11 Hybrid Meeting: Minutes of Meeting” (PDF).
  160. ↑ Victor Zverovich (2022년 11월 8일). “Should the output of std::print to a terminal be synchronized with the underlying stream?”.
  161. ↑ Ranns, Nina (2023년 3월 6일). “WG21 2023-02 Hybrid Meeting: Minutes of Meeting” (PDF).
  162. ↑ Corentin Jabot (2023년 2월 9일). “Referencing The Unicode Standard” (PDF).
  163. ↑ Tim Song (2023년 1월 31일). “Stashing stashing iterators for proper flattening”.