aboutsummaryrefslogtreecommitdiff
path: root/libiberty/testsuite
diff options
context:
space:
mode:
authorIan Lance Taylor <ian@wasabisystems.com>2003-12-15 14:37:25 +0000
committerIan Lance Taylor <ian@gcc.gnu.org>2003-12-15 14:37:25 +0000
commit374caa503bcf9605a85f8b68c79ca2d918c96fb0 (patch)
treeceddf800710ca602c6497bf9eb391a6baf0c777f /libiberty/testsuite
parent58cd2515ae19e8aac09b3615b0a105e055bb4081 (diff)
downloadgcc-374caa503bcf9605a85f8b68c79ca2d918c96fb0.zip
gcc-374caa503bcf9605a85f8b68c79ca2d918c96fb0.tar.gz
gcc-374caa503bcf9605a85f8b68c79ca2d918c96fb0.tar.bz2
Fix handling of constructor/destructor of standard substitution:
* cp-demangle.c (struct d_standard_sub_info): Define. (d_substitution): Add prefix argument. Change all callers. Rework handling of standard substitutions to print full name when qualifying a constructor/destructor, or when DMGL_VERBOSE is set. * testsuite/demangle-expected: Add test case. Fix handling of negative literal constants: * cp-demangle.c (enum d_comp_type): Add D_COMP_LITERAL_NEG. (d_dump, d_make_comp): Handle D_COMP_LITERAL_NEG. (d_expr_primary): Use D_COMP_LITERAL_NEG for a negative number. (d_print_comp): Handle D_COMP_LITERAL_NEG. * testsuite/demangle-expected: Add test case. From-SVN: r74632
Diffstat (limited to 'libiberty/testsuite')
-rw-r--r--libiberty/testsuite/demangle-expected12
1 files changed, 11 insertions, 1 deletions
diff --git a/libiberty/testsuite/demangle-expected b/libiberty/testsuite/demangle-expected
index c47c6ae..b39e2f4 100644
--- a/libiberty/testsuite/demangle-expected
+++ b/libiberty/testsuite/demangle-expected
@@ -2905,7 +2905,17 @@ bool std::operator< <file_path, std::string>(std::pair<file_path, std::string> c
--format=gnu-v3
_Z9hairyfuncM1YKFPVPFrPA2_PM1XKFKPA3_ilEPcEiE
hairyfunc(int (* const (X::** (* restrict (* volatile*(Y::*)(int) const)(char*)) [2])(long) const) [3])
-#
+#
+# Check that negative numbers are handled correctly.
+--format=gnu-v3
+_Z1fILin1EEvv
+void f<-1>()
+#
+# Check a destructor of a standard substitution.
+--format=gnu-v3
+_ZNSdD0Ev
+std::basic_iostream<char, std::char_traits<char> >::~basic_iostream()
+#
# This caused an infinite loop.
#
# This is generated by an EDG compiler (kcc 4.0). To demangle it