[Lldb-commits] [PATCH] D20135: Keep original source path and mapped path in LineEntry

Jim Ingham via lldb-commits lldb-commits at lists.llvm.org
Tue May 10 14:47:29 PDT 2016


jingham requested changes to this revision.
jingham added a comment.
This revision now requires changes to proceed.

This approach seems right to me.

See the inline comment for BreakpointResolver.

In ThreadPlanStepOverRange at line 235 this instance should also be changed to original_file:

  if (sc.line_entry.file != m_addr_context.line_entry.file

Also, there are a couple of places where we test equality of the files in line_entries:

the "struct SourceInfo" operators in CommandObjectSource
LineEntry::GetSameLineContiguousAddressRange () const

I am pretty sure both of those should test original_file, so they don't depend on when/if the line_entries tested got re-mapped.


================
Comment at: source/Breakpoint/BreakpointResolver.cpp:88-93
@@ -87,8 +87,8 @@
             {
-                match_file_spec = sc.line_entry.file;
+                match_file_spec = sc.line_entry.original_file;
                 matches = true;
                 first_entry = false;
             }
             else
-                matches = (sc.line_entry.file == match_file_spec);
+                matches = (sc.line_entry.original_file == match_file_spec);
             
----------------
In this case, we probably want to try both.  This code is where we set file & line breakpoints.  If we're showing the re-mapped file in source listings or anything like that, we should allow people to use it to set breakpoints.  But I wouldn't want setting breakpoints by the debug info name to fail as well.


http://reviews.llvm.org/D20135





More information about the lldb-commits mailing list