Commit 2824ef7
[lldb-dap] Implement value locations for function pointers (llvm#104589)
This commit adds `valueLocationReference` to function pointers and
function references. Thereby, users can navigate directly to the
pointed-to function from within the "variables" pane.
In general, it would be useful to also a add similar location references
also to member function pointers, `std::source_location`,
`std::function`, and many more. Doing so would require extending the
formatters to provide such a source code location.
There were two RFCs about this a while ago:
https://discourse.llvm.org/t/rfc-extending-formatters-with-a-source-code-reference/68375
https://discourse.llvm.org/t/rfc-sbvalue-metadata-provider/68377/26
However, both RFCs ended without a conclusion. As such, this commit now
implements the lowest-hanging fruit, i.e. function pointers. If people
find it useful, I will revive the RFC afterwards.1 parent 6b20086 commit 2824ef7
File tree
7 files changed
+192
-40
lines changed- lldb
- test/API/tools/lldb-dap/locations
- tools/lldb-dap
7 files changed
+192
-40
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | | - | |
| 1 | + | |
2 | 2 | | |
3 | 3 | | |
Lines changed: 45 additions & 4 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
19 | 19 | | |
20 | 20 | | |
21 | 21 | | |
22 | | - | |
| 22 | + | |
23 | 23 | | |
24 | 24 | | |
25 | 25 | | |
26 | | - | |
| 26 | + | |
27 | 27 | | |
28 | 28 | | |
29 | 29 | | |
| |||
36 | 36 | | |
37 | 37 | | |
38 | 38 | | |
39 | | - | |
40 | | - | |
| 39 | + | |
| 40 | + | |
| 41 | + | |
| 42 | + | |
| 43 | + | |
| 44 | + | |
| 45 | + | |
| 46 | + | |
| 47 | + | |
| 48 | + | |
| 49 | + | |
| 50 | + | |
| 51 | + | |
| 52 | + | |
| 53 | + | |
| 54 | + | |
| 55 | + | |
| 56 | + | |
| 57 | + | |
| 58 | + | |
| 59 | + | |
| 60 | + | |
| 61 | + | |
| 62 | + | |
| 63 | + | |
| 64 | + | |
| 65 | + | |
| 66 | + | |
| 67 | + | |
| 68 | + | |
| 69 | + | |
| 70 | + | |
| 71 | + | |
| 72 | + | |
| 73 | + | |
| 74 | + | |
| 75 | + | |
| 76 | + | |
| 77 | + | |
| 78 | + | |
| 79 | + | |
| 80 | + | |
| 81 | + | |
This file was deleted.
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1223 | 1223 | | |
1224 | 1224 | | |
1225 | 1225 | | |
| 1226 | + | |
| 1227 | + | |
| 1228 | + | |
| 1229 | + | |
| 1230 | + | |
| 1231 | + | |
| 1232 | + | |
| 1233 | + | |
| 1234 | + | |
| 1235 | + | |
| 1236 | + | |
| 1237 | + | |
| 1238 | + | |
| 1239 | + | |
| 1240 | + | |
| 1241 | + | |
| 1242 | + | |
| 1243 | + | |
| 1244 | + | |
1226 | 1245 | | |
1227 | 1246 | | |
1228 | 1247 | | |
| |||
1302 | 1321 | | |
1303 | 1322 | | |
1304 | 1323 | | |
| 1324 | + | |
| 1325 | + | |
| 1326 | + | |
| 1327 | + | |
| 1328 | + | |
| 1329 | + | |
| 1330 | + | |
| 1331 | + | |
| 1332 | + | |
| 1333 | + | |
| 1334 | + | |
| 1335 | + | |
1305 | 1336 | | |
1306 | 1337 | | |
1307 | 1338 | | |
| |||
1415 | 1446 | | |
1416 | 1447 | | |
1417 | 1448 | | |
1418 | | - | |
| 1449 | + | |
| 1450 | + | |
| 1451 | + | |
| 1452 | + | |
| 1453 | + | |
1419 | 1454 | | |
1420 | 1455 | | |
1421 | 1456 | | |
| |||
1441 | 1476 | | |
1442 | 1477 | | |
1443 | 1478 | | |
1444 | | - | |
1445 | | - | |
| 1479 | + | |
| 1480 | + | |
1446 | 1481 | | |
1447 | 1482 | | |
1448 | 1483 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
480 | 480 | | |
481 | 481 | | |
482 | 482 | | |
| 483 | + | |
| 484 | + | |
| 485 | + | |
| 486 | + | |
| 487 | + | |
| 488 | + | |
| 489 | + | |
| 490 | + | |
| 491 | + | |
| 492 | + | |
483 | 493 | | |
484 | 494 | | |
485 | 495 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1561 | 1561 | | |
1562 | 1562 | | |
1563 | 1563 | | |
| 1564 | + | |
| 1565 | + | |
| 1566 | + | |
| 1567 | + | |
| 1568 | + | |
| 1569 | + | |
| 1570 | + | |
| 1571 | + | |
| 1572 | + | |
| 1573 | + | |
| 1574 | + | |
| 1575 | + | |
| 1576 | + | |
1564 | 1577 | | |
1565 | 1578 | | |
1566 | 1579 | | |
| |||
1647 | 1660 | | |
1648 | 1661 | | |
1649 | 1662 | | |
1650 | | - | |
1651 | | - | |
| 1663 | + | |
| 1664 | + | |
| 1665 | + | |
1652 | 1666 | | |
1653 | | - | |
1654 | | - | |
| 1667 | + | |
| 1668 | + | |
| 1669 | + | |
1655 | 1670 | | |
1656 | | - | |
1657 | 1671 | | |
1658 | 1672 | | |
1659 | 1673 | | |
| 1674 | + | |
| 1675 | + | |
1660 | 1676 | | |
1661 | 1677 | | |
1662 | 1678 | | |
| |||
3770 | 3786 | | |
3771 | 3787 | | |
3772 | 3788 | | |
| 3789 | + | |
| 3790 | + | |
| 3791 | + | |
| 3792 | + | |
| 3793 | + | |
| 3794 | + | |
| 3795 | + | |
| 3796 | + | |
| 3797 | + | |
| 3798 | + | |
| 3799 | + | |
3773 | 3800 | | |
3774 | 3801 | | |
3775 | 3802 | | |
| |||
3794 | 3821 | | |
3795 | 3822 | | |
3796 | 3823 | | |
3797 | | - | |
3798 | 3824 | | |
3799 | 3825 | | |
3800 | 3826 | | |
| |||
3824 | 3850 | | |
3825 | 3851 | | |
3826 | 3852 | | |
| 3853 | + | |
| 3854 | + | |
3827 | 3855 | | |
3828 | | - | |
3829 | | - | |
3830 | | - | |
3831 | | - | |
| 3856 | + | |
| 3857 | + | |
| 3858 | + | |
3832 | 3859 | | |
3833 | 3860 | | |
3834 | 3861 | | |
| 3862 | + | |
| 3863 | + | |
3835 | 3864 | | |
3836 | 3865 | | |
3837 | 3866 | | |
| |||
4122 | 4151 | | |
4123 | 4152 | | |
4124 | 4153 | | |
4125 | | - | |
| 4154 | + | |
4126 | 4155 | | |
4127 | | - | |
4128 | | - | |
| 4156 | + | |
| 4157 | + | |
| 4158 | + | |
| 4159 | + | |
| 4160 | + | |
4129 | 4161 | | |
4130 | 4162 | | |
4131 | 4163 | | |
4132 | 4164 | | |
4133 | 4165 | | |
4134 | 4166 | | |
4135 | 4167 | | |
4136 | | - | |
4137 | | - | |
4138 | | - | |
4139 | | - | |
4140 | | - | |
4141 | | - | |
4142 | | - | |
4143 | | - | |
4144 | | - | |
4145 | 4168 | | |
4146 | | - | |
4147 | | - | |
4148 | | - | |
4149 | | - | |
4150 | | - | |
| 4169 | + | |
| 4170 | + | |
| 4171 | + | |
| 4172 | + | |
| 4173 | + | |
| 4174 | + | |
| 4175 | + | |
| 4176 | + | |
| 4177 | + | |
| 4178 | + | |
| 4179 | + | |
| 4180 | + | |
| 4181 | + | |
| 4182 | + | |
| 4183 | + | |
| 4184 | + | |
| 4185 | + | |
| 4186 | + | |
| 4187 | + | |
| 4188 | + | |
| 4189 | + | |
| 4190 | + | |
| 4191 | + | |
| 4192 | + | |
| 4193 | + | |
| 4194 | + | |
| 4195 | + | |
| 4196 | + | |
| 4197 | + | |
| 4198 | + | |
| 4199 | + | |
| 4200 | + | |
| 4201 | + | |
| 4202 | + | |
| 4203 | + | |
| 4204 | + | |
| 4205 | + | |
| 4206 | + | |
| 4207 | + | |
| 4208 | + | |
| 4209 | + | |
| 4210 | + | |
| 4211 | + | |
4151 | 4212 | | |
4152 | 4213 | | |
4153 | 4214 | | |
| |||
0 commit comments