aboutsummaryrefslogtreecommitdiff
path: root/gdb
diff options
context:
space:
mode:
Diffstat (limited to 'gdb')
-rw-r--r--gdb/ChangeLog10
-rwxr-xr-xgdb/WHATS.NEW10
-rw-r--r--gdb/gdbtypes.c22
3 files changed, 38 insertions, 4 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index 13124c3..c76cfc3 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,3 +1,13 @@
+Fri Jun 12 12:49:43 1992 Fred Fish (fnf@cygnus.com)
+
+ * expprint.c (print_subexp): Add missing ']'.
+ * defs.h (reg_names): Fix declaration to match that in infcmd.c
+ * stack.c (reg_names): Delete redundant (and inconsistent) decl.
+ * WHATS.NEW: Point out improved C++ function name handling.
+ * gdbtypes.c (lookup_fundamental_type): For now, use the same
+ type names for both implicitly and explicitly signed integral
+ types. See comment in the source code.
+
Thu Jun 11 12:31:50 1992 John Gilmore (gnu at cygnus.com)
Two `long long' fixes from Robert R. Henry (rrh@dino.tera.com):
diff --git a/gdb/WHATS.NEW b/gdb/WHATS.NEW
index 280471e..f10d721 100755
--- a/gdb/WHATS.NEW
+++ b/gdb/WHATS.NEW
@@ -1,6 +1,16 @@
What has changed since GDB-3.5?
(Organized release by release)
+*** Changes in GDB-4.6:
+
+ * Better support for C++ function names
+
+GDB now accepts as input the "demangled form" of C++ overloaded function
+names and member function names, and can do command completion on such names
+(using TAB, TAB-TAB, and ESC-?). The names have to be quoted with a pair of
+single quotes. Examples are 'func (int, long)' and 'obj::operator==(obj&)'.
+Make use of command completion, it is your friend.
+
*** Changes in GDB-4.5:
* New machines supported (host and target)
diff --git a/gdb/gdbtypes.c b/gdb/gdbtypes.c
index 77a26bc..8af9e85 100644
--- a/gdb/gdbtypes.c
+++ b/gdb/gdbtypes.c
@@ -880,7 +880,21 @@ init_type (code, length, flags, name, objfile)
define fundamental types.
For the formats which don't provide fundamental types, gdb can create
- such types, using defaults reasonable for the current target machine. */
+ such types, using defaults reasonable for the current target machine.
+
+ FIXME: Some compilers distinguish explicitly signed integral types
+ (signed short, signed int, signed long) from "regular" integral types
+ (short, int, long) in the debugging information. There is some dis-
+ agreement as to how useful this feature is. In particular, gcc does
+ not support this. Also, only some debugging formats allow the
+ distinction to be passed on to a debugger. For now, we always just
+ use "short", "int", or "long" as the type name, for both the implicit
+ and explicitly signed types. This also makes life easier for the
+ gdb test suite since we don't have to account for the differences
+ in output depending upon what the compiler and debugging format
+ support. We will probably have to re-examine the issue when gdb
+ starts taking it's fundamental type information directly from the
+ debugging information supplied by the compiler. fnf@cygnus.com */
struct type *
lookup_fundamental_type (objfile, typeid)
@@ -959,7 +973,7 @@ lookup_fundamental_type (objfile, typeid)
type = init_type (TYPE_CODE_INT,
TARGET_SHORT_BIT / TARGET_CHAR_BIT,
TYPE_FLAG_SIGNED,
- "signed short", objfile);
+ "short", objfile); /* FIXME -fnf */
break;
case FT_UNSIGNED_SHORT:
type = init_type (TYPE_CODE_INT,
@@ -977,7 +991,7 @@ lookup_fundamental_type (objfile, typeid)
type = init_type (TYPE_CODE_INT,
TARGET_INT_BIT / TARGET_CHAR_BIT,
TYPE_FLAG_SIGNED,
- "signed int", objfile);
+ "int", objfile); /* FIXME -fnf */
break;
case FT_UNSIGNED_INTEGER:
type = init_type (TYPE_CODE_INT,
@@ -1001,7 +1015,7 @@ lookup_fundamental_type (objfile, typeid)
type = init_type (TYPE_CODE_INT,
TARGET_LONG_BIT / TARGET_CHAR_BIT,
TYPE_FLAG_SIGNED,
- "signed long", objfile);
+ "long", objfile); /* FIXME -fnf */
break;
case FT_UNSIGNED_LONG:
type = init_type (TYPE_CODE_INT,