4b6aaa996e
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 |
||
---|---|---|
.. | ||
ansidecl.h | ||
ChangeLog | ||
ChangeLog-9103 | ||
COPYING | ||
COPYING3 | ||
demangle.h | ||
dwarf2.h | ||
dyn-string.h | ||
fibheap.h | ||
filenames.h | ||
floatformat.h | ||
fnmatch.h | ||
getopt.h | ||
hashtab.h | ||
libiberty.h | ||
lto-symtab.h | ||
md5.h | ||
objalloc.h | ||
obstack.h | ||
partition.h | ||
plugin-api.h | ||
safe-ctype.h | ||
sha1.h | ||
simple-object.h | ||
sort.h | ||
splay-tree.h | ||
symcat.h | ||
timeval-utils.h | ||
xregex2.h | ||
xregex.h | ||
xtensa-config.h |