mirror of
git://gcc.gnu.org/git/gcc.git
synced 2025-01-11 08:44:42 +08:00
cp-demangle.c (has_return_type): Skip qualifiers when checking whether we have a template.
* cp-demangle.c (has_return_type): Skip qualifiers when checking whether we have a template. * testsuite/demangle-expected: Add four new tests. From-SVN: r73819
This commit is contained in:
parent
d44c7e3643
commit
0ba5c8a2be
@ -1,3 +1,9 @@
|
||||
2003-11-21 Ian Lance Taylor <ian@wasabisystems.com>
|
||||
|
||||
* cp-demangle.c (has_return_type): Skip qualifiers when checking
|
||||
whether we have a template.
|
||||
* testsuite/demangle-expected: Add four new tests.
|
||||
|
||||
2003-11-20 Ian Lance Taylor <ian@wasabisystems.com>
|
||||
|
||||
* testsuite/demangle-expected: Minor changes to match output of
|
||||
|
@ -908,6 +908,11 @@ has_return_type (dc)
|
||||
return 0;
|
||||
case D_COMP_TEMPLATE:
|
||||
return ! is_ctor_dtor_or_conversion (d_left (dc));
|
||||
case D_COMP_RESTRICT:
|
||||
case D_COMP_VOLATILE:
|
||||
case D_COMP_CONST:
|
||||
case D_COMP_VENDOR_TYPE_QUAL:
|
||||
return has_return_type (d_left (dc));
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -2858,6 +2858,27 @@ global constructors keyed to _Z2fnv
|
||||
--format=gnu-v3
|
||||
_Z1rM1GFivEMS_KFivES_M1HFivES1_4whatIKS_E5what2IS8_ES3_
|
||||
r(int (G::*)(), int (G::*)() const, G, int (H::*)(), int (G::*)(), what<G const>, what2<G const>, int (G::*)() const)
|
||||
#
|
||||
# This is from the gdb testsuite gdb.cp/cplusfuncs.exp.
|
||||
--format=gnu-v3
|
||||
_Z10hairyfunc5PFPFilEPcE
|
||||
hairyfunc5(int (*(*)(char*))(long))
|
||||
#
|
||||
# This is from gcc PR 8861
|
||||
--format=gnu-v3
|
||||
_Z1fILi1ELc120EEv1AIXplT_cviLd810000000000000000703DAD7A370C5EEE
|
||||
void f<1, 120>(A<(1) + (((int)((double)810000000000000000703DAD7A370C5)))>)
|
||||
#
|
||||
# This is also from gcc PR 8861
|
||||
--format=gnu-v3
|
||||
_Z1fILi1EEv1AIXplT_cvingLf3f800000EEE
|
||||
void f<1>(A<(1) + (((int)(-((float)3f800000))))>)
|
||||
#
|
||||
# This is from a libstdc++ debug mode patch.
|
||||
--format=gnu-v3
|
||||
_ZNK11__gnu_debug16_Error_formatter14_M_format_wordImEEvPciPKcT_
|
||||
void __gnu_debug::_Error_formatter::_M_format_word<unsigned long>(char*, int, char const*, unsigned long) const
|
||||
#
|
||||
#
|
||||
# This caused an infinite loop.
|
||||
# We still don't demangle this correctly, but at least we don't hang.
|
||||
|
Loading…
Reference in New Issue
Block a user