Commit c3bc483
[Clang] Fix concept paramater mapping and caching (llvm#161994)
This expression is not handled by default in RAV, so our parameter
mapping and cache mechanism don't work when it appears in a template
argument list.
There are a few other expressions, such as PackIndexingExpr and
FunctionParmPackExpr, which are also no-ops by default. I don't have a
test case for them now, so let's leave those until users complain :/
There was also a bug in updating the parameter mapping, where the
AssociatedDecl was not updated accordingly.
Also also, this fixes another regression reported in
llvm#161671 (comment),
where we failed to account for the variable initializer in cache
profiling.
Relies on llvm#161671
Fixes llvm#161983
Fixes llvm#1619871 parent 3a0a9d4 commit c3bc483
File tree
3 files changed
+91
-13
lines changed- clang
- lib/Sema
- test/SemaTemplate
3 files changed
+91
-13
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
264 | 264 | | |
265 | 265 | | |
266 | 266 | | |
267 | | - | |
268 | | - | |
269 | | - | |
270 | | - | |
271 | | - | |
272 | | - | |
273 | | - | |
274 | | - | |
275 | 267 | | |
276 | 268 | | |
277 | 269 | | |
| |||
294 | 286 | | |
295 | 287 | | |
296 | 288 | | |
297 | | - | |
| 289 | + | |
298 | 290 | | |
299 | 291 | | |
300 | 292 | | |
| |||
312 | 304 | | |
313 | 305 | | |
314 | 306 | | |
315 | | - | |
| 307 | + | |
316 | 308 | | |
317 | 309 | | |
318 | 310 | | |
| |||
325 | 317 | | |
326 | 318 | | |
327 | 319 | | |
328 | | - | |
| 320 | + | |
| 321 | + | |
| 322 | + | |
329 | 323 | | |
| 324 | + | |
330 | 325 | | |
331 | 326 | | |
332 | 327 | | |
| |||
363 | 358 | | |
364 | 359 | | |
365 | 360 | | |
| 361 | + | |
| 362 | + | |
| 363 | + | |
| 364 | + | |
| 365 | + | |
| 366 | + | |
| 367 | + | |
| 368 | + | |
366 | 369 | | |
367 | 370 | | |
368 | 371 | | |
| |||
2083 | 2086 | | |
2084 | 2087 | | |
2085 | 2088 | | |
2086 | | - | |
2087 | | - | |
| 2089 | + | |
| 2090 | + | |
2088 | 2091 | | |
2089 | 2092 | | |
2090 | 2093 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
6718 | 6718 | | |
6719 | 6719 | | |
6720 | 6720 | | |
| 6721 | + | |
| 6722 | + | |
| 6723 | + | |
| 6724 | + | |
6721 | 6725 | | |
6722 | 6726 | | |
6723 | 6727 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1333 | 1333 | | |
1334 | 1334 | | |
1335 | 1335 | | |
| 1336 | + | |
| 1337 | + | |
| 1338 | + | |
| 1339 | + | |
| 1340 | + | |
| 1341 | + | |
| 1342 | + | |
| 1343 | + | |
| 1344 | + | |
| 1345 | + | |
| 1346 | + | |
| 1347 | + | |
| 1348 | + | |
| 1349 | + | |
| 1350 | + | |
| 1351 | + | |
| 1352 | + | |
| 1353 | + | |
| 1354 | + | |
| 1355 | + | |
| 1356 | + | |
| 1357 | + | |
| 1358 | + | |
| 1359 | + | |
| 1360 | + | |
| 1361 | + | |
| 1362 | + | |
| 1363 | + | |
| 1364 | + | |
| 1365 | + | |
| 1366 | + | |
| 1367 | + | |
| 1368 | + | |
| 1369 | + | |
| 1370 | + | |
| 1371 | + | |
| 1372 | + | |
| 1373 | + | |
| 1374 | + | |
| 1375 | + | |
| 1376 | + | |
| 1377 | + | |
| 1378 | + | |
| 1379 | + | |
| 1380 | + | |
| 1381 | + | |
| 1382 | + | |
| 1383 | + | |
| 1384 | + | |
| 1385 | + | |
| 1386 | + | |
| 1387 | + | |
| 1388 | + | |
| 1389 | + | |
| 1390 | + | |
| 1391 | + | |
| 1392 | + | |
| 1393 | + | |
| 1394 | + | |
| 1395 | + | |
| 1396 | + | |
| 1397 | + | |
| 1398 | + | |
| 1399 | + | |
| 1400 | + | |
| 1401 | + | |
| 1402 | + | |
| 1403 | + | |
| 1404 | + | |
| 1405 | + | |
| 1406 | + | |
1336 | 1407 | | |
0 commit comments