Commit 1d5595e
committed
Round 14: binary literals, constexpr constructors, concept ordering, friend templates
Parser:
- constexpr on constructors: parseFunctionOrConstructorOrDestructor consumes
constexpr and rebuilds FunctionDecl with isConstexpr=true
- Friend function templates: pass outer templateParams to friend handler so
template<typename U> before friend is correctly associated
- sizeof...(Ts) in template args: full expression preserved in NamedType
CodeGen:
- Constructor init list: use braces {} for InitializerListExpr args (m{{r0},{r1}})
- Friend binary operators with template params: emit template<> prefix before friend
CppBuild:
- Concept deduction guide check: concepts with requires { } -> not misclassified
as deduction guides (was deferring Printable concept to after struct Sketch)
CppLexer:
- Binary integer literals: 0b1010, 0b1100, 0b10101000 now lexed as INT_LITERAL1 parent 67e858d commit 1d5595e
5 files changed
Lines changed: 68 additions & 16 deletions
Binary file not shown.
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
197 | 197 | | |
198 | 198 | | |
199 | 199 | | |
| 200 | + | |
| 201 | + | |
| 202 | + | |
| 203 | + | |
| 204 | + | |
| 205 | + | |
| 206 | + | |
| 207 | + | |
| 208 | + | |
| 209 | + | |
| 210 | + | |
| 211 | + | |
| 212 | + | |
| 213 | + | |
| 214 | + | |
| 215 | + | |
200 | 216 | | |
201 | | - | |
| 217 | + | |
202 | 218 | | |
203 | 219 | | |
204 | 220 | | |
| |||
530 | 546 | | |
531 | 547 | | |
532 | 548 | | |
533 | | - | |
534 | | - | |
535 | | - | |
536 | | - | |
| 549 | + | |
| 550 | + | |
| 551 | + | |
| 552 | + | |
| 553 | + | |
| 554 | + | |
| 555 | + | |
| 556 | + | |
| 557 | + | |
| 558 | + | |
| 559 | + | |
| 560 | + | |
537 | 561 | | |
538 | | - | |
539 | 562 | | |
540 | 563 | | |
541 | 564 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1228 | 1228 | | |
1229 | 1229 | | |
1230 | 1230 | | |
1231 | | - | |
| 1231 | + | |
| 1232 | + | |
| 1233 | + | |
| 1234 | + | |
1232 | 1235 | | |
1233 | 1236 | | |
1234 | 1237 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
235 | 235 | | |
236 | 236 | | |
237 | 237 | | |
| 238 | + | |
| 239 | + | |
| 240 | + | |
| 241 | + | |
| 242 | + | |
| 243 | + | |
| 244 | + | |
| 245 | + | |
| 246 | + | |
| 247 | + | |
238 | 248 | | |
239 | 249 | | |
240 | 250 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
928 | 928 | | |
929 | 929 | | |
930 | 930 | | |
931 | | - | |
932 | | - | |
| 931 | + | |
| 932 | + | |
933 | 933 | | |
934 | 934 | | |
935 | 935 | | |
| |||
952 | 952 | | |
953 | 953 | | |
954 | 954 | | |
955 | | - | |
| 955 | + | |
| 956 | + | |
| 957 | + | |
| 958 | + | |
| 959 | + | |
| 960 | + | |
| 961 | + | |
| 962 | + | |
| 963 | + | |
| 964 | + | |
956 | 965 | | |
957 | 966 | | |
958 | 967 | | |
| |||
966 | 975 | | |
967 | 976 | | |
968 | 977 | | |
| 978 | + | |
969 | 979 | | |
970 | 980 | | |
971 | 981 | | |
| |||
1032 | 1042 | | |
1033 | 1043 | | |
1034 | 1044 | | |
1035 | | - | |
| 1045 | + | |
1036 | 1046 | | |
1037 | 1047 | | |
1038 | 1048 | | |
| |||
1929 | 1939 | | |
1930 | 1940 | | |
1931 | 1941 | | |
1932 | | - | |
1933 | | - | |
| 1942 | + | |
| 1943 | + | |
| 1944 | + | |
1934 | 1945 | | |
1935 | | - | |
1936 | | - | |
| 1946 | + | |
| 1947 | + | |
| 1948 | + | |
| 1949 | + | |
| 1950 | + | |
| 1951 | + | |
| 1952 | + | |
1937 | 1953 | | |
1938 | | - | |
| 1954 | + | |
1939 | 1955 | | |
1940 | 1956 | | |
1941 | 1957 | | |
| |||
0 commit comments