aboutsummaryrefslogtreecommitdiff
path: root/gdb/cp-namespace.c
diff options
context:
space:
mode:
authorTom Tromey <tromey@redhat.com>2010-02-19 20:22:03 +0000
committerTom Tromey <tromey@redhat.com>2010-02-19 20:22:03 +0000
commit48e32051ca17ba1cc1a2d5adc90ae5a63775e138 (patch)
treeceb4f1f24d0d7bb10e106f1d9416354b0d5e5915 /gdb/cp-namespace.c
parent629d6a470a1b61631c812ec417b522fb6d69d9d1 (diff)
downloadgdb-48e32051ca17ba1cc1a2d5adc90ae5a63775e138.zip
gdb-48e32051ca17ba1cc1a2d5adc90ae5a63775e138.tar.gz
gdb-48e32051ca17ba1cc1a2d5adc90ae5a63775e138.tar.bz2
gdb
PR c++/8693, PR c++/9496: * cp-namespace.c (cp_lookup_nested_type): Handle TYPE_CODE_UNION. * c-exp.y (lex_one_token): Rename from yylex. Don't call write_dollar_variable. Don't try to classify NAME tokens. (token_and_value): New type. (token_fifo, popping, name_obstack): New globals. (classify_name): New function. (classify_inner_name): Likewise. (yylex): Likewise. (VARIABLE): Now has type sval. (exp : VARIABLE): Call write_dollar_variable. (qualified_name): Use TYPENAME, not typebase. Add production for multiple "::" instances. (variable): Use name_not_typename. (qualified_type): Remove. (typebase): Update. gdb/testsuite PR c++/8693, PR c++/9496: * gdb.cp/namespace.exp: Remove some setup_kfail calls. Added regression tests.
Diffstat (limited to 'gdb/cp-namespace.c')
-rw-r--r--gdb/cp-namespace.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/gdb/cp-namespace.c b/gdb/cp-namespace.c
index 5e894d4..cdc76d4 100644
--- a/gdb/cp-namespace.c
+++ b/gdb/cp-namespace.c
@@ -540,6 +540,7 @@ cp_lookup_nested_type (struct type *parent_type,
{
case TYPE_CODE_STRUCT:
case TYPE_CODE_NAMESPACE:
+ case TYPE_CODE_UNION:
{
/* NOTE: carlton/2003-11-10: We don't treat C++ class members
of classes like, say, data or function members. Instead,