re PR c++/78761 (C++14, compiler generate mangled name that can not be demangled)
PR c++/78761 * cp-demangle.c (cplus_demangle_type): Demangle Dc as decltype(auto). * testsuite/demangle-expected: Add test for decltype(auto). From-SVN: r243593
This commit is contained in:
parent
4de3788411
commit
816f431440
@ -1,3 +1,9 @@
|
|||||||
|
2016-12-13 Jakub Jelinek <jakub@redhat.com>
|
||||||
|
|
||||||
|
PR c++/78761
|
||||||
|
* cp-demangle.c (cplus_demangle_type): Demangle Dc as decltype(auto).
|
||||||
|
* testsuite/demangle-expected: Add test for decltype(auto).
|
||||||
|
|
||||||
2016-12-12 Nathan Sidwell <nathan@acm.org>
|
2016-12-12 Nathan Sidwell <nathan@acm.org>
|
||||||
|
|
||||||
PR c++/78252
|
PR c++/78252
|
||||||
|
@ -2593,6 +2593,10 @@ cplus_demangle_type (struct d_info *di)
|
|||||||
/* auto */
|
/* auto */
|
||||||
ret = d_make_name (di, "auto", 4);
|
ret = d_make_name (di, "auto", 4);
|
||||||
break;
|
break;
|
||||||
|
case 'c':
|
||||||
|
/* decltype(auto) */
|
||||||
|
ret = d_make_name (di, "decltype(auto)", 14);
|
||||||
|
break;
|
||||||
|
|
||||||
case 'f':
|
case 'f':
|
||||||
/* 32-bit decimal floating point */
|
/* 32-bit decimal floating point */
|
||||||
|
@ -4200,6 +4200,9 @@ decltype (new auto({parm#1})) f<int>(int)
|
|||||||
_Z1fIiERDaRKT_S1_
|
_Z1fIiERDaRKT_S1_
|
||||||
auto& f<int>(int const&, int)
|
auto& f<int>(int const&, int)
|
||||||
--format=gnu-v3
|
--format=gnu-v3
|
||||||
|
_Z1gIiEDcRKT_S0_
|
||||||
|
decltype(auto) g<int>(int const&, int)
|
||||||
|
--format=gnu-v3
|
||||||
_Z1gILi1EEvR1AIXT_EER1BIXscbT_EE
|
_Z1gILi1EEvR1AIXT_EER1BIXscbT_EE
|
||||||
void g<1>(A<1>&, B<static_cast<bool>(1)>&)
|
void g<1>(A<1>&, B<static_cast<bool>(1)>&)
|
||||||
--format=gnu-v3
|
--format=gnu-v3
|
||||||
|
Loading…
Reference in New Issue
Block a user