aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJim Kingdon <jkingdon@engr.sgi.com>1993-12-27 17:27:45 +0000
committerJim Kingdon <jkingdon@engr.sgi.com>1993-12-27 17:27:45 +0000
commitdfb4a5086163f6d359745033328895b31642b047 (patch)
tree97b902781ad6344063972d4ae6958695dcd237fb
parent2d2fc7e464ff5c665893c9be6b5531abbcea465c (diff)
downloadgdb-dfb4a5086163f6d359745033328895b31642b047.zip
gdb-dfb4a5086163f6d359745033328895b31642b047.tar.gz
gdb-dfb4a5086163f6d359745033328895b31642b047.tar.bz2
* c-exp.y (yylex): Don't try to deal with nested types.
-rw-r--r--gdb/ChangeLog2
-rw-r--r--gdb/c-exp.y9
2 files changed, 11 insertions, 0 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index 47bcd76..a04c463 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,5 +1,7 @@
Mon Dec 27 11:07:05 1993 Jim Kingdon (kingdon@lioth.cygnus.com)
+ * c-exp.y (yylex): Don't try to deal with nested types.
+
* cp-valprint.c (cplus_print_value): Call check_stub_type on
TYPE_BASECLASS (type, i) before we look at its name.
diff --git a/gdb/c-exp.y b/gdb/c-exp.y
index ddff35f..ebc1ca6 100644
--- a/gdb/c-exp.y
+++ b/gdb/c-exp.y
@@ -1474,6 +1474,12 @@ yylex ()
}
if (sym && SYMBOL_CLASS (sym) == LOC_TYPEDEF)
{
+#if 0
+ /* In "A::x", if x is a member function of A and there happens
+ to be a type (nested or not, since the stabs don't make that
+ distinction) named x, then this code incorrectly thinks we
+ are dealing with nested types rather than a member function. */
+
char *p;
char *namestart;
struct symbol *best_sym;
@@ -1541,6 +1547,9 @@ yylex ()
}
yylval.tsym.type = SYMBOL_TYPE (best_sym);
+#else /* not 0 */
+ yylval.tsym.type = SYMBOL_TYPE (sym);
+#endif /* not 0 */
return TYPENAME;
}
if ((yylval.tsym.type = lookup_primitive_typename (tmp)) != 0)