From c02645965c9980fbd13f6f8d74724c78924eebab Mon Sep 17 00:00:00 2001
From: Jim Kingdon <jkingdon@engr.sgi.com>
Date: Sat, 3 Apr 1993 01:04:39 +0000
Subject: [PATCH] N_SO fixes

---
 gdb/doc/ChangeLog     |  4 ++++
 gdb/doc/stabs.texinfo | 16 +++++++++++-----
 2 files changed, 15 insertions(+), 5 deletions(-)

diff --git a/gdb/doc/ChangeLog b/gdb/doc/ChangeLog
index b8e880bc778..d3b4924073e 100644
--- a/gdb/doc/ChangeLog
+++ b/gdb/doc/ChangeLog
@@ -1,3 +1,7 @@
+Fri Apr  2 16:55:13 1993  Jim Kingdon  (kingdon@cygnus.com)
+
+	* stabs.texinfo: Fixes about N_SO.
+
 Fri Mar 26 18:00:35 1993  Roland H. Pesch  (pesch@fowanton.cygnus.com)
 
 	* gdb.texinfo: include list of nonstandard init file names
diff --git a/gdb/doc/stabs.texinfo b/gdb/doc/stabs.texinfo
index 4acd9feb822..036fb98855e 100644
--- a/gdb/doc/stabs.texinfo
+++ b/gdb/doc/stabs.texinfo
@@ -2769,15 +2769,21 @@ Path and name of source file containing main routine
 @end display
 
 @example
-"name" -> /path/to/source/file
-       -> source_file_terminal_name
+"name" -> /source/directory/
+       -> source_file
 
 value  -> the starting text address of the compilation.
 @end example
 
-These are found two in a row.  The name field of the first N_SO
-contains the path to the source file.  The name field of the second
-N_SO contains the terminal name of the source file itself.
+These are found two in a row.  The name field of the first N_SO contains
+the directory that the source file is relative to.  The name field of
+the second N_SO contains the name of the source file itself.
+
+Only some compilers (e.g. gcc2, Sun cc) include the directory; this
+symbol can be distinguished by the fact that it ends in a slash.
+According to a comment in GDB's partial-stab.h, other compilers
+(especially unnamed C++ compilers) put out useless N_SO's for
+nonexistent source files (after the N_SO for the real source file).
 
 @node N_LSYM
 @section 128 - 0x80 - N_LSYM