aboutsummaryrefslogtreecommitdiff
path: root/gcc/go
diff options
context:
space:
mode:
authorJason Merrill <jason@redhat.com>2012-01-06 16:39:43 -0500
committerJason Merrill <jason@gcc.gnu.org>2012-01-06 16:39:43 -0500
commit4b6aaa996e0d8f5abac818315b6f77cb3596db98 (patch)
treea4fb9016edd51d789295648c2f9d497fc2a85eb3 /gcc/go
parent49f2da1a16b6336cbc8f5273a3dc835625fbf23f (diff)
downloadgcc-4b6aaa996e0d8f5abac818315b6f77cb3596db98.zip
gcc-4b6aaa996e0d8f5abac818315b6f77cb3596db98.tar.gz
gcc-4b6aaa996e0d8f5abac818315b6f77cb3596db98.tar.bz2
re PR c++/6057 (expression mangling doesn't work for operator new)
PR c++/6057 PR c++/48051 PR c++/50855 PR c++/51322 gcc/cp/ * mangle.c (write_expression): Support NEW_EXPR, DELETE_EXPR, THROW_EXPR, CONSTRUCTOR, OVERLOAD. Fix PREINCREMENT_EXPR and PREDECREMENT_EXPR. (write_template_arg): Fix mangling of class-scope functions and argument packs. (mangle_decl): Update suggested -fabi-version argument. * operators.def: Add DOTSTAR_EXPR, REINTERPRET_CAST_EXPR, DYNAMIC_CAST_EXPR; correct CONST_CAST_EXPR, STATIC_CAST_EXPR. * tree.c (dependent_name): No longer static. * cp-tree.h: Declare it. * pt.c (unify): Defer handling of unconverted functions. include/ * demangle.h (enum demangle_component_type): Add DEMANGLE_COMPONENT_INITIALIZER_LIST, DEMANGLE_COMPONENT_NULLARY. libiberty/ * cp-demangle.c (d_dump): Handle DEMANGLE_COMPONENT_NULLARY and DEMANGLE_COMPONENT_INITIALIZER_LIST. (d_make_comp): Likewise. Allow null right arg for DEMANGLE_COMPONENT_TRINARY_ARG2. (cplus_demangle_operators): Adjust new/delete; add .*, :: and throw. (d_template_args, d_template_arg): Handle 'J' for argument packs. (d_exprlist): Add terminator parm. (d_expression, d_print_comp): Handle initializer lists, nullary expressions, prefix/suffix operators, and new. (d_print_subexpr): Avoid parens around DEMANGLE_COMPONENT_QUAL_NAME and DEMANGLE_COMPONENT_INITIALIZER_LIST. * testsuite/demangle-expected: Add tests. From-SVN: r182970
Diffstat (limited to 'gcc/go')
0 files changed, 0 insertions, 0 deletions