Firstly, here are the characters in our story: * lldb
$ lldb --version lldb version 5.0.1 * clang $ p=/path/to/clang $ file -L "$p" /path/to/clang: ELF 64-bit LSB shared object, x86-64, version 1 (GNU/Linux), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 3.2.0, BuildID[sha1]=3a2da750e90367b294e4219896738fa9b0a285ad, with debug_info, not stripped $ "$p" --version clang version 7.0.0 (trunk 324807) Target: x86_64-unknown-linux-gnu Thread model: posix InstalledDir: /path/to Launch "lldb" with the above "clang": $ lldb "$p" (lldb) target create "/path/to/clang" Current executable set to '/path/to/clang' (x86_64). (lldb) Now, type the following, where "<TAB>" means that the tab key is pressed in order to initiate argument completion: (lldb) breakpoint set --fullname clang::APValue::isMemberPointerT<TAB> After pegging some CPU cores for an appreciable amount of time, and after loading GiBs of data into RAM, lldb provides the following completion: (lldb) breakpoint set --fullname clang::APValue::isMemberPointerToDerivedMember()\ const Issue the above lldb command (that is, press "<ENTER>") in order to set a breakpoint that apparently cannot be resolved: (lldb) breakpoint set --fullname clang::APValue::isMemberPointerToDerivedMember()\ const <ENTER> Breakpoint 1: no locations (pending). WARNING: Unable to resolve breakpoint to any actual locations. Now, try a plain "--name", which works: (lldb) breakpoint set --name isMemberPointerToDerivedMember<ENTER> Breakpoint 2: where = clang`clang::APValue::isMemberPointerToDerivedMember() const + 12 at APValue.cpp:623, address = 0x0000000005f6931e Hmmm... ... ...Hmmm... ... ...... WHAT?! Sincerely, Michael Witten _______________________________________________ lldb-dev mailing list lldb-dev@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-dev