Commit b21eb56
committed
C++26 support: build flags, parser features, library headers
Build:
- CppBuild.java: -std=c++20 -> -std=c++2c (GCC C++26 draft)
- generate_plugandplay.py: -std=c++17 -> -std=c++2c throughout
- generate_cmake.py: CMAKE_CXX_STANDARD -> 26
Parser (C++26 features):
- = delete("reason"): optional string message on deleted functions
now consumed in both ctor and function declaration paths
- if consteval: C++23/26 immediate-function context check parsed;
emitted as if constexpr(true) for runtime compatibility
- constexpr/constinit structured bindings: isStructuredBindingStart
and parseStructuredBinding now recognize constexpr/constinit before auto
Processing.h:
- C++23 headers guarded by __cplusplus >= 202302L:
<expected>, <flat_map>, <flat_set>, <generator>, <print>
- C++26 headers guarded by __has_include and __cplusplus > 202302L:
<inplace_vector>, <function_ref>
CppBuild preamble:
- C++23/26 using declarations added with version guards:
std::expected, std::unexpected, std::print, std::println,
std::inplace_vector, std::function_ref1 parent 02b7a8e commit b21eb56
3 files changed
Lines changed: 42 additions & 33 deletions
Binary file not shown.
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
981 | 981 | | |
982 | 982 | | |
983 | 983 | | |
984 | | - | |
985 | | - | |
| 984 | + | |
| 985 | + | |
986 | 986 | | |
987 | 987 | | |
988 | 988 | | |
| |||
1100 | 1100 | | |
1101 | 1101 | | |
1102 | 1102 | | |
1103 | | - | |
1104 | | - | |
1105 | | - | |
1106 | | - | |
1107 | | - | |
1108 | | - | |
1109 | | - | |
1110 | | - | |
1111 | | - | |
1112 | | - | |
1113 | | - | |
1114 | | - | |
1115 | | - | |
1116 | | - | |
1117 | | - | |
1118 | | - | |
1119 | | - | |
1120 | | - | |
1121 | | - | |
1122 | | - | |
1123 | | - | |
1124 | | - | |
1125 | | - | |
1126 | | - | |
1127 | | - | |
1128 | | - | |
1129 | | - | |
1130 | | - | |
1131 | | - | |
1132 | | - | |
1133 | | - | |
| 1103 | + | |
| 1104 | + | |
| 1105 | + | |
| 1106 | + | |
| 1107 | + | |
| 1108 | + | |
| 1109 | + | |
| 1110 | + | |
| 1111 | + | |
| 1112 | + | |
| 1113 | + | |
| 1114 | + | |
| 1115 | + | |
| 1116 | + | |
| 1117 | + | |
| 1118 | + | |
| 1119 | + | |
| 1120 | + | |
| 1121 | + | |
1134 | 1122 | | |
1135 | 1123 | | |
1136 | 1124 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
103 | 103 | | |
104 | 104 | | |
105 | 105 | | |
| 106 | + | |
| 107 | + | |
| 108 | + | |
| 109 | + | |
| 110 | + | |
| 111 | + | |
| 112 | + | |
| 113 | + | |
| 114 | + | |
| 115 | + | |
106 | 116 | | |
107 | 117 | | |
108 | 118 | | |
| |||
149 | 159 | | |
150 | 160 | | |
151 | 161 | | |
| 162 | + | |
| 163 | + | |
| 164 | + | |
| 165 | + | |
| 166 | + | |
| 167 | + | |
| 168 | + | |
| 169 | + | |
| 170 | + | |
152 | 171 | | |
153 | 172 | | |
154 | 173 | | |
| |||
1321 | 1340 | | |
1322 | 1341 | | |
1323 | 1342 | | |
| 1343 | + | |
| 1344 | + | |
1324 | 1345 | | |
1325 | 1346 | | |
1326 | 1347 | | |
| |||
0 commit comments