diff options
author | David Carlton <carlton@bactrian.org> | 2002-12-18 00:45:44 +0000 |
---|---|---|
committer | David Carlton <carlton@bactrian.org> | 2002-12-18 00:45:44 +0000 |
commit | a1bd8ce08206a0d805542edecc3bc58025a0fa26 (patch) | |
tree | 83a3ff61ed5c34a7c91cc8c72ddced2126ddd3f0 /gdb/testsuite | |
parent | b8938f9c2f554c2e72e7b11f902e09884a220c20 (diff) | |
download | gdb-a1bd8ce08206a0d805542edecc3bc58025a0fa26.tar.gz |
2002-12-17 David Carlton <carlton@math.stanford.edu>
* c-exp.y (yylex): Modify the #if 1 block to handle nested types
in a more honest manner.
* symtab.c (lookup_nested_type): New function.
* symtab.h: Declare lookup_nested_type.
2002-12-16 David Carlton <carlton@math.stanford.edu>
* symtab.c (lookup_partial_symbol): Don't search past the end of
the partial symbols.
* Makefile.in (f-exp.tab.c): Don't depend on c-exp.tab.c.
* dwarf2read.c (new_symbol): Only make global symbols associated
to structures, etc. if the current language is C++.
(add_partial_symbol): Ditto (for partial symbols).
2002-12-17 David Carlton <carlton@math.stanford.edu>
* gdb.c++/m-data.cc: Whitespace cleanup, to match mainline patch.
* gdb.c++/m-static.cc: Ditto.
* gdb.c++/namespace.exp: Fix comment. Delete third argument to
all the gdb_tests.
2002-12-16 David Carlton <carlton@math.stanford.edu>
* gdb.c++/namespace.exp: Change KFAIL messages to point to c++/XXX
instead of gdb/XXX.
Diffstat (limited to 'gdb/testsuite')
-rw-r--r-- | gdb/testsuite/ChangeLog | 17 | ||||
-rw-r--r-- | gdb/testsuite/gdb.c++/m-data.cc | 2 | ||||
-rw-r--r-- | gdb/testsuite/gdb.c++/m-static.cc | 6 | ||||
-rw-r--r-- | gdb/testsuite/gdb.c++/namespace.cc | 1 | ||||
-rw-r--r-- | gdb/testsuite/gdb.c++/namespace.exp | 117 |
5 files changed, 80 insertions, 63 deletions
diff --git a/gdb/testsuite/ChangeLog b/gdb/testsuite/ChangeLog index 0886e86ece4..977114b29a2 100644 --- a/gdb/testsuite/ChangeLog +++ b/gdb/testsuite/ChangeLog @@ -1,3 +1,20 @@ +2002-12-17 David Carlton <carlton@math.stanford.edu> + + * gdb.c++/m-data.cc: Whitespace cleanup, to match mainline patch. + * gdb.c++/m-static.cc: Ditto. + * gdb.c++/namespace.exp: Fix comment. Delete third argument to + all the gdb_tests. + +2002-12-16 David Carlton <carlton@math.stanford.edu> + + * gdb.c++/namespace.exp: Change KFAIL messages to point to c++/XXX + instead of gdb/XXX. + +2002-12-02 David Carlton <carlton@math.stanford.edu> + + * gdb.c++/namespace.exp: Add format strings after all the + setup_kfails. + 2002-11-29 David Carlton <carlton@bactrian.org> * gdb.c++/namespace.exp: Add OtherFileClass tests. diff --git a/gdb/testsuite/gdb.c++/m-data.cc b/gdb/testsuite/gdb.c++/m-data.cc index f5afec0b74a..2066546d134 100644 --- a/gdb/testsuite/gdb.c++/m-data.cc +++ b/gdb/testsuite/gdb.c++/m-data.cc @@ -1,6 +1,6 @@ // 2002-05-13 -enum region { oriental, egyptian, greek, etruscan, roman }; +enum region { oriental, egyptian, greek, etruscan, roman }; // Test one. class gnu_obj_1 diff --git a/gdb/testsuite/gdb.c++/m-static.cc b/gdb/testsuite/gdb.c++/m-static.cc index e5b9cd1eecd..6d08cb063ea 100644 --- a/gdb/testsuite/gdb.c++/m-static.cc +++ b/gdb/testsuite/gdb.c++/m-static.cc @@ -1,6 +1,6 @@ // 2002-05-13 -enum region { oriental, egyptian, greek, etruscan, roman }; +enum region { oriental, egyptian, greek, etruscan, roman }; // Test one. class gnu_obj_1 @@ -43,8 +43,8 @@ class gnu_obj_3 { public: typedef region antiquities; - static gnu_obj_2<int> data; - + static gnu_obj_2<int> data; + public: gnu_obj_3(antiquities b) { } }; diff --git a/gdb/testsuite/gdb.c++/namespace.cc b/gdb/testsuite/gdb.c++/namespace.cc index 0a264ec403f..d9c9593e2b9 100644 --- a/gdb/testsuite/gdb.c++/namespace.cc +++ b/gdb/testsuite/gdb.c++/namespace.cc @@ -196,6 +196,7 @@ namespace C //cc; C::cc; cd; + //C::D::cd; E::cde; shadow; //E::ce; diff --git a/gdb/testsuite/gdb.c++/namespace.exp b/gdb/testsuite/gdb.c++/namespace.exp index fa38f2e58a3..1f0d7e1b124 100644 --- a/gdb/testsuite/gdb.c++/namespace.exp +++ b/gdb/testsuite/gdb.c++/namespace.exp @@ -79,10 +79,10 @@ gdb_test "up" ".*main.*" "up from marker1" # Access a data item inside a namespace using colons and # single quotes. :-( -# NOTE: carlton/2002-11-24: the colons are becoming less necessary (or -# even desirable.) For tests where it should still work with colons, -# I'm including versions both with and without colons; for tests that -# shouldn't work with colons, I'm only including one version. +# NOTE: carlton/2002-11-24: the quotes are becoming less necessary (or +# even desirable.) For tests where it should still work with quotes, +# I'm including versions both with and without quotes; for tests that +# shouldn't work with quotes, I'm only including one version. send_gdb "print 'AAA::c'\n" gdb_expect { @@ -178,7 +178,7 @@ gdb_expect { send_gdb "print BBB::CCC::xyzq('x')\n" gdb_expect { -re "\\$\[0-9\]* = 122 'z'\r\n$gdb_prompt $" { - pass "print 'BBB::CCC::xyzq'('x')" + pass "print BBB::CCC::xyzq('x')" } -re ".*$gdb_prompt $" { fail "print BBB::CCC::xyzq('x')" } timeout { fail "(timeout) print BBB::CCC::xyzq('x')" } @@ -235,53 +235,52 @@ if ![runto "C::D::marker2"] then { continue } -gdb_test "print c" "\\$\[0-9\].* = 1" "print c" -gdb_test "print cc" "No symbol \"cc\" in current context." "print cc" -gdb_test "print 'C::cc'" "\\$\[0-9\].* = 2" "print 'C::cc'" -gdb_test "print C::cc" "\\$\[0-9\].* = 2" "print C::cc" -gdb_test "print cd" "\\$\[0-9\].* = 3" "print cd" -gdb_test "print 'C::D::cd'" "\\$\[0-9\].* = 3" "print 'C::D::cd'" -gdb_test "print C::D::cd" "\\$\[0-9\].* = 3" "print C::D::cd" -gdb_test "print 'E::cde'" "\\$\[0-9\].* = 5" "print 'E::cde'" -gdb_test "print E::cde" "\\$\[0-9\].* = 5" "print E::cde" -gdb_test "print shadow" "\\$\[0-9\].* = 13" "print shadow" -gdb_test "print E::ce" "No symbol \"ce\" in namespace \"C::D::E\"." "print E::ce" -gdb_test "ptype C" "type = namespace C::C" "ptype C::C" -gdb_test "ptype E" "type = namespace C::D::E" "ptype C::D::E" - -gdb_test "ptype CClass" "type = class C::CClass \{\r\n public:\r\n int x;\r\n\}" "ptype CClass" -gdb_test "ptype CClass::NestedClass" "type = class C::CClass::NestedClass \{\r\n public:\r\n int y;\r\n\}" "ptype CClass::NestedClass" -gdb_test "ptype NestedClass" "No symbol \"NestedClass\" in current context." "ptype NestedClass" -gdb_test "ptype ::C::CClass" "type = class C::CClass \{\r\n public:\r\n int x;\r\n\}" "ptype ::C::CClass" -gdb_test "ptype ::C::CClass::NestedClass" "type = class C::CClass::NestedClass \{\r\n public:\r\n int y;\r\n\}" "ptype ::C::CClass::NestedClass" -gdb_test "ptype ::C::NestedClass" "No symbol \"NestedClass\" in namespace \"C\"." "ptype ::C::NestedClass" -gdb_test "ptype C::CClass" "No symbol \"Class\" in namespace \"C::C\"" "ptype C::CClass" -gdb_test "ptype C::CClass::NestedClass" "No symbol \"Class\" in namespace \"C::C\"" "ptype C::CClass::NestedClass" -gdb_test "ptype C::NestedClass" "No symbol \"NestedClass\" in namespace \"C::C\"." "ptype C::NestedClass" +gdb_test "print c" "\\$\[0-9\].* = 1" +gdb_test "print cc" "No symbol \"cc\" in current context." +gdb_test "print 'C::cc'" "\\$\[0-9\].* = 2" +gdb_test "print C::cc" "\\$\[0-9\].* = 2" +gdb_test "print cd" "\\$\[0-9\].* = 3" +gdb_test "print C::D::cd" "No type \"D\" within context \"C::C\"." +gdb_test "print 'E::cde'" "\\$\[0-9\].* = 5" +gdb_test "print E::cde" "\\$\[0-9\].* = 5" +gdb_test "print shadow" "\\$\[0-9\].* = 13" +gdb_test "print E::ce" "No symbol \"ce\" in namespace \"C::D::E\"." +gdb_test "ptype C" "type = namespace C::C" +gdb_test "ptype E" "type = namespace C::D::E" + +gdb_test "ptype CClass" "type = class C::CClass \{\r\n public:\r\n int x;\r\n\}" +gdb_test "ptype CClass::NestedClass" "type = class C::CClass::NestedClass \{\r\n public:\r\n int y;\r\n\}" +gdb_test "ptype NestedClass" "No symbol \"NestedClass\" in current context." +gdb_test "ptype ::C::CClass" "type = class C::CClass \{\r\n public:\r\n int x;\r\n\}" +gdb_test "ptype ::C::CClass::NestedClass" "type = class C::CClass::NestedClass \{\r\n public:\r\n int y;\r\n\}" +gdb_test "ptype ::C::NestedClass" "No symbol \"NestedClass\" in namespace \"C\"." +gdb_test "ptype C::CClass" "No symbol \"CClass\" in namespace \"C::C\"." +gdb_test "ptype C::CClass::NestedClass" "No symbol \"CClass\" in namespace \"C::C\"." +gdb_test "ptype C::NestedClass" "No symbol \"NestedClass\" in namespace \"C::C\"." # Tests involving multiple files -gdb_test "ptype OtherFileClass" "type = class C::OtherFileClass \{\r\n public:\r\n int z;\r\n\}" "ptype OtherFileClass" -gdb_test "ptype ::C::OtherFileClass" "type = class C::OtherFileClass \{\r\n public:\r\n int z;\r\n\}" "ptype ::C::OtherFileClass" -gdb_test "ptype C::OtherFileClass" "No symbol \"Class\" in namespace \"C::C\"" "ptype C::OtherFileClass" +gdb_test "ptype OtherFileClass" "type = class C::OtherFileClass \{\r\n public:\r\n int z;\r\n\}" +gdb_test "ptype ::C::OtherFileClass" "type = class C::OtherFileClass \{\r\n public:\r\n int z;\r\n\}" +gdb_test "ptype C::OtherFileClass" "No symbol \"Class\" in namespace \"C::C\"." # Some anonymous namespace tests. -gdb_test "print cX" "\\$\[0-9\].* = 6" "print cX" -gdb_test "print 'F::cXf'" "\\$\[0-9\].* = 7" "print 'F::cXf'" -gdb_test "print F::cXf" "\\$\[0-9\].* = 7" "print F::cXf" -gdb_test "print 'F::cXfX'" "\\$\[0-9\].* = 8" "print 'F::cXfX'" -gdb_test "print F::cXfX" "\\$\[0-9\].* = 8" "print F::cXfX" -gdb_test "print X" "\\$\[0-9\].* = 9" "print X" -gdb_test "print 'G::Xg'" "\\$\[0-9\].* = 10" "print 'G::Xg'" -gdb_test "print G::Xg" "\\$\[0-9\].* = 10" "print G::Xg" -gdb_test "print 'G::XgX'" "\\$\[0-9\].* = 11" "print 'G::XgX'" -gdb_test "print G::XgX" "\\$\[0-9\].* = 11" "print G::XgX" +gdb_test "print cX" "\\$\[0-9\].* = 6" +gdb_test "print 'F::cXf'" "\\$\[0-9\].* = 7" +gdb_test "print F::cXf" "\\$\[0-9\].* = 7" +gdb_test "print 'F::cXfX'" "\\$\[0-9\].* = 8" +gdb_test "print F::cXfX" "\\$\[0-9\].* = 8" +gdb_test "print X" "\\$\[0-9\].* = 9" +gdb_test "print 'G::Xg'" "\\$\[0-9\].* = 10" +gdb_test "print G::Xg" "\\$\[0-9\].* = 10" +gdb_test "print 'G::XgX'" "\\$\[0-9\].* = 11" +gdb_test "print G::XgX" "\\$\[0-9\].* = 11" # Test namespace renaming. -setup_kfail "gdb/830" -gdb_test "print I::h" "\\$\[0-9\].* = 14" "print I::h" +setup_kfail "c++/830" "*-*-*" +gdb_test "print I::h" "\\$\[0-9\].* = 14" # Test using directives. @@ -289,22 +288,22 @@ gdb_test "print I::h" "\\$\[0-9\].* = 14" "print I::h" # have unfortunate interactions with namespace scope issues. As of # this writing, some of these pass, but they pass for the wrong reasons. -setup_kfail "gdb/829" -gdb_test "print j" "\\$\[0-9\].* = 15" "print j" -setup_kfail "gdb/829" -gdb_test "print L::k" "\\$\[0-9\].* = 16" "print L::k" -setup_kfail "gdb/829" -gdb_test "print k" "No symbol \"k\" in current context." "print k" -setup_kfail "gdb/829" -gdb_test "print cdm" "\\$\[0-9\].* = 17" "print cdm" -setup_kfail "gdb/829" -gdb_test "print Q::o" "\\$\[0-9\].* = 18" "print Q::o" -setup_kfail "gdb/829" -gdb_test "print o" "No symbol \"o\" in current context." "print o" +setup_kfail "c++/829" "*-*-*" +gdb_test "print j" "\\$\[0-9\].* = 15" +setup_kfail "c++/829" "*-*-*" +gdb_test "print L::k" "\\$\[0-9\].* = 16" +setup_kfail "c++/829" "*-*-*" +gdb_test "print k" "No symbol \"k\" in current context." +setup_kfail "c++/829" "*-*-*" +gdb_test "print cdm" "\\$\[0-9\].* = 17" +setup_kfail "c++/829" "*-*-*" +gdb_test "print Q::o" "\\$\[0-9\].* = 18" +setup_kfail "c++/829" "*-*-*" +gdb_test "print o" "No symbol \"o\" in current context." # Test using declarations. I should probably test these more. -setup_kfail "gdb/831" -gdb_test "print r1" "\\$\[0-9\].* = 19" "print r1" -setup_kfail "gdb/831" -gdb_test "print r2" "No symbol \"r2\" in current context." "print r2" +setup_kfail "c++/831" "*-*-*" +gdb_test "print r1" "\\$\[0-9\].* = 19" +setup_kfail "c++/831" "*-*-*" +gdb_test "print r2" "No symbol \"r2\" in current context." |