On Mon, 04 Nov 2019 16:16:30 +0100, Konrad Kleine via lldb-dev wrote: > I read the LLDB troubleshooting page [1] and found interesting quotes: > > > When setting breakpoints in implementation source files (.c, cpp, cxx, > .m, .mm, etc), LLDB by > > default will only search for compile units whose filename matches. > > [...] > > % echo "settings set target.inline-breakpoint-strategy always" >> > ~/.lldbinit ... > I now added the breakpoint strategy and ran the above command without the > -x in order to pick up > the LLDB init code. Still no luck.
That doc is obsolete, LLDB has this setting by default: (lldb) settings show target.inline-breakpoint-strategy target.inline-breakpoint-strategy (enum) = always It has been changed: https://github.com/llvm/llvm-project/commit/ad6eee639952090684aa84c35218ec327a017ca1 This setting does work but only for the --line option: ==> inc.C <== #include "inc2.C" int main() { func(); } ==> inc2.C <== static volatile int i; static void func() { i++; } $ clang++ -o inc inc.C -Wall -g;lldb ./inc (lldb) target create "./inc" Current executable set to './inc' (x86_64). (lldb) settings set target.inline-breakpoint-strategy headers (lldb) breakpoint set --file inc2.C --line 3 Breakpoint 1: no locations (pending). WARNING: Unable to resolve breakpoint to any actual locations. (lldb) settings set target.inline-breakpoint-strategy always (lldb) breakpoint set --file inc2.C --line 3 Breakpoint 2: where = inc`func() + 4 at inc2.C:3:4, address = 0x0000000000401124 (lldb) _ To make it working also for the -n option will require some fix, maybe some code around lldb/source/Commands/CommandObjectBreakpoint.cpp line 500, dunno. Jan _______________________________________________ lldb-dev mailing list lldb-dev@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-dev