[Bug 40133] New: type lookup doesn't work with nested types when using Native PDB reader.

Bug ID 40133
Summary type lookup doesn’t work with nested types when using Native PDB reader.
Product lldb
Version unspecified
Hardware PC
OS Windows NT
Status NEW
Severity enhancement
Priority P
Component All Bugs
Assignee lldb-dev@lists.llvm.org
Reporter zturner@google.com
CC aleksandr.urakov@jetbrains.com, llvm-bugs@lists.llvm.org, mosescu@google.com

struct S {
  struct NestedStruct {};
};

(lldb) type lookup -- S::NestedStruct

will fail to return any types.

The reason for this is that LLDB parses this and attempts to look up just the
type "NestedStruct".  It expects us to return a list of all types named
NestedStruct, including those which are nested in other structs.  Then, it will
filter this list itself.

Our Native PDB reader already pre-processes the TPI stream when the PDB is
loaded and discovers all nested types, so we have the ability to index nested
types by their basename at no incremental complexity, and this should make it
possible for this to work.