gdb assumes that any debug entry with a line number of 0 means that line
number information is not available (see struct symtab_and_line here):

http://www.opensource.apple.com/source/gdb/gdb-967/src/gdb/symtab.h

lldb currently uses UINT32_MAX for the same thing.

I suggest changing lldb to use the same value as gdb so that it's possible
to mark line entry data as invalid in the same way for both debuggers.

Thanks,
Andrew
diff --git a/include/lldb/lldb-defines.h b/include/lldb/lldb-defines.h
index ae6d8cf..e3469f5 100644
--- a/include/lldb/lldb-defines.h
+++ b/include/lldb/lldb-defines.h
@@ -94,7 +94,7 @@
 #define LLDB_INVALID_FRAME_ID           UINT32_MAX
 #define LLDB_INVALID_SIGNAL_NUMBER      INT32_MAX
 #define LLDB_INVALID_OFFSET             UINT64_MAX // Must match max of lldb::offset_t
-#define LLDB_INVALID_LINE_NUMBER        UINT32_MAX
+#define LLDB_INVALID_LINE_NUMBER        0
 #define LLDB_INVALID_QUEUE_ID           0
 
 //----------------------------------------------------------------------
_______________________________________________
lldb-dev mailing list
lldb-dev@cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/lldb-dev

Reply via email to