-
Notifications
You must be signed in to change notification settings - Fork 36
[gdb] Support 'typename' parameter to LookupGlobalSymbol or equivalent #54
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Comments
Also: >>> gdb.lookup_symbol('ui::AXTreeManagerMap::GetInstance()::instance')
(<gdb.Symbol object at 0x7fca45d5fb98>, False) |
Interesting... Looks like GDB accepts more than just namespaces as prefixes for global symbols. Perhaps we should rename the namespace parameter? Also, if the typename parameter is not useful to GDB, perhaps it can ignore it in the same way WinDbg/VS ignores the namespace parameter? |
@KurtCattiSchmidt Just FYI... |
For my reference, some notes in testing in #29 (comment) |
And use it in ax-tree.js. This makes the lookup work on GDB. Fixes: MicrosoftEdge#54
Fixed by #58 Note, the AX Tree extension does not quite work yet because we do not yet support std::__Cr::unordered_map |
The typename is used to disambiguate global symbols and is used in ax-tree.js which is trying to access a function-local variable named "instance" (https://cs.chromium.org/chromium/src/ui/accessibility/ax_tree_manager_map.cc?sq=package:chromium&g=0&l=13):
On Windows, "instance" gets looked up without qualifier and is thus ambiguous, and gets disambiguated by type.
On GDB, it could get looked up like this:
Need to figure out how to best implement this. Perhaps re-purposing the namespace argument wouldn't be too bad? Or else need to find a way to iterate over global symbols and match them by type.
The text was updated successfully, but these errors were encountered: