tree 8b34958296135cdbd112111d1ba174828369ca9c
parent 96069bad6c01b80af1464d57004f49a5c5af1bc0
author Brett Wilson <brettw@google.com> 1558734033 +0000
committer CQ bot account: commit-bot@chromium.org <commit-bot@chromium.org> 1558734033 +0000

[debugger] Add options to FindName().

FindName() has two variants, one that returns multiple things and one
that returns just the first (for convenience). The simpler one does not
allow setting the options because for historical usage this was not
necessary.

This patch adds options for the simpler variant of FindName(). Currently
only the default options are used and there should be no behavior
change. But this will allow future uses of the simpler API.

It also plumbs the options through the name lookup callback. As above,
there is no behavior change and the callers currently specify "all
types" (the previous default).

Hook up the "declaration" flag for types. Currently this isn't really
used but will be used in a followup to convert declarations to
definitions when printing.

Slightly improve the debug dumping of the symbol index to indicate the
types of entities referenced. This is never used in real code, only for
manual testing. A commented-out test was added to explicitly dump the
index for a hardcoded file name for certain debugging tasks.

Change-Id: I4d549fb1e5f00d82ae93a2c4ed07756397b54e20
