Commit 9d6cec5
authored
[clang][Interp] Fix activating via indirect field initializers (llvm#102753)
Pointer::activate() propagates up anyway, so that is handled. But we
need to call activate() in any case since the parent might not be a
union, but the activate() is still needed. Always call it and hope that
the InUnion flag takes care of the potential performance problems.1 parent 8d908b8 commit 9d6cec5
File tree
4 files changed
+47
-38
lines changed- clang
- lib/AST/Interp
- test/AST/Interp
4 files changed
+47
-38
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
4737 | 4737 | | |
4738 | 4738 | | |
4739 | 4739 | | |
4740 | | - | |
4741 | | - | |
| 4740 | + | |
4742 | 4741 | | |
4743 | 4742 | | |
4744 | 4743 | | |
| |||
4750 | 4749 | | |
4751 | 4750 | | |
4752 | 4751 | | |
4753 | | - | |
4754 | | - | |
4755 | 4752 | | |
4756 | 4753 | | |
4757 | 4754 | | |
| |||
4787 | 4784 | | |
4788 | 4785 | | |
4789 | 4786 | | |
4790 | | - | |
| 4787 | + | |
4791 | 4788 | | |
4792 | 4789 | | |
4793 | 4790 | | |
| |||
4815 | 4812 | | |
4816 | 4813 | | |
4817 | 4814 | | |
4818 | | - | |
4819 | 4815 | | |
4820 | 4816 | | |
4821 | 4817 | | |
4822 | | - | |
| 4818 | + | |
| 4819 | + | |
4823 | 4820 | | |
4824 | 4821 | | |
4825 | 4822 | | |
| |||
4829 | 4826 | | |
4830 | 4827 | | |
4831 | 4828 | | |
4832 | | - | |
4833 | | - | |
| 4829 | + | |
4834 | 4830 | | |
4835 | 4831 | | |
4836 | 4832 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1391 | 1391 | | |
1392 | 1392 | | |
1393 | 1393 | | |
| 1394 | + | |
1394 | 1395 | | |
1395 | 1396 | | |
1396 | 1397 | | |
| |||
1413 | 1414 | | |
1414 | 1415 | | |
1415 | 1416 | | |
1416 | | - | |
1417 | | - | |
1418 | | - | |
1419 | | - | |
1420 | | - | |
1421 | | - | |
1422 | | - | |
1423 | | - | |
1424 | | - | |
1425 | | - | |
1426 | | - | |
1427 | | - | |
1428 | | - | |
1429 | | - | |
1430 | 1417 | | |
1431 | 1418 | | |
1432 | 1419 | | |
| |||
1451 | 1438 | | |
1452 | 1439 | | |
1453 | 1440 | | |
1454 | | - | |
1455 | | - | |
1456 | | - | |
1457 | | - | |
1458 | | - | |
1459 | | - | |
1460 | | - | |
1461 | | - | |
1462 | | - | |
1463 | | - | |
1464 | | - | |
1465 | 1441 | | |
1466 | 1442 | | |
1467 | 1443 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
440 | 440 | | |
441 | 441 | | |
442 | 442 | | |
443 | | - | |
444 | | - | |
445 | 443 | | |
446 | 444 | | |
447 | 445 | | |
| |||
451 | 449 | | |
452 | 450 | | |
453 | 451 | | |
454 | | - | |
455 | | - | |
456 | 452 | | |
457 | 453 | | |
458 | 454 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
306 | 306 | | |
307 | 307 | | |
308 | 308 | | |
| 309 | + | |
| 310 | + | |
| 311 | + | |
| 312 | + | |
| 313 | + | |
| 314 | + | |
| 315 | + | |
| 316 | + | |
| 317 | + | |
| 318 | + | |
| 319 | + | |
| 320 | + | |
| 321 | + | |
| 322 | + | |
| 323 | + | |
| 324 | + | |
| 325 | + | |
| 326 | + | |
| 327 | + | |
| 328 | + | |
| 329 | + | |
| 330 | + | |
| 331 | + | |
| 332 | + | |
| 333 | + | |
| 334 | + | |
| 335 | + | |
| 336 | + | |
| 337 | + | |
| 338 | + | |
| 339 | + | |
| 340 | + | |
| 341 | + | |
| 342 | + | |
| 343 | + | |
| 344 | + | |
| 345 | + | |
| 346 | + | |
| 347 | + | |
| 348 | + | |
| 349 | + | |
309 | 350 | | |
0 commit comments