8sa1-gcc/include
Patrick Palka a3bf6ce7f2 c++: Adjust mangling of __alignof__ [PR88115]
r11-4926 made __alignof__ get mangled differently from alignof,
encoding __alignof__ as a vendor extended operator.  But this
mangling is problematic for the reasons mentioned in
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88115#c6.

This patch changes our mangling of __alignof__ to instead use the
new "vendor extended expression" syntax that's proposed in
https://github.com/itanium-cxx-abi/cxx-abi/issues/112.  Clang does
the same thing already, so after this patch Clang and GCC agree
about the mangling of __alignof__(type) and __alignof__(expr).

gcc/cp/ChangeLog:

	PR c++/88115
	* mangle.c (write_expression): Adjust the mangling of
	__alignof__.

include/ChangeLog:

	PR c++/88115
	* demangle.h (enum demangle_component_type): Add
	DEMANGLE_COMPONENT_VENDOR_EXPR.

libiberty/ChangeLog:

	PR c++/88115
	* cp-demangle.c (d_dump, d_make_comp, d_expression_1)
	(d_count_templates_scopes): Handle DEMANGLE_COMPONENT_VENDOR_EXPR.
	(d_print_comp_inner): Likewise.
	<case DEMANGLE_COMPONENT_EXTENDED_OPERATOR>: Revert r11-4926
	change.
	<case DEMANGLE_COMPONENT_UNARY>: Likewise.
	* testsuite/demangle-expected: Adjust __alignof__ tests.

gcc/testsuite/ChangeLog:

	PR c++/88115
	* g++.dg/cpp0x/alignof7.C: Adjust expected mangling.
2021-03-30 22:57:11 -04:00
..
gdb Update copyright years. 2021-01-04 10:26:59 +01:00
ansidecl.h Update copyright years. 2021-01-04 10:26:59 +01:00
ChangeLog Daily bump. 2021-01-17 00:16:23 +00:00
ChangeLog-9103
ChangeLog.jit
COPYING
COPYING3
demangle.h c++: Adjust mangling of __alignof__ [PR88115] 2021-03-30 22:57:11 -04:00
dwarf2.def Update copyright years. 2021-01-04 10:26:59 +01:00
dwarf2.h Update copyright years. 2021-01-04 10:26:59 +01:00
dyn-string.h Update copyright years. 2021-01-04 10:26:59 +01:00
environ.h Update copyright years. 2021-01-04 10:26:59 +01:00
fibheap.h Update copyright years. 2021-01-04 10:26:59 +01:00
filenames.h Update copyright years. 2021-01-04 10:26:59 +01:00
floatformat.h Update copyright years. 2021-01-04 10:26:59 +01:00
fnmatch.h Update copyright years. 2021-01-04 10:26:59 +01:00
gcc-c-fe.def Update copyright years. 2021-01-04 10:26:59 +01:00
gcc-c-interface.h Update copyright years. 2021-01-04 10:26:59 +01:00
gcc-cp-fe.def Update copyright years. 2021-01-04 10:26:59 +01:00
gcc-cp-interface.h Update copyright years. 2021-01-04 10:26:59 +01:00
gcc-interface.h Update copyright years. 2021-01-04 10:26:59 +01:00
getopt.h Update copyright years. 2021-01-04 10:26:59 +01:00
gomp-constants.h openmp: Add support for the OpenMP 5.0 task detach clause 2021-01-16 12:58:13 -08:00
hashtab.h Update copyright years. 2021-01-04 10:26:59 +01:00
hsa_ext_amd.h Import HSA header files from AMD 2020-12-09 11:10:40 +00:00
hsa_ext_image.h Import HSA header files from AMD 2020-12-09 11:10:40 +00:00
hsa.h Import HSA header files from AMD 2020-12-09 11:10:40 +00:00
leb128.h Update copyright years. 2021-01-04 10:26:59 +01:00
libiberty.h Update copyright years. 2021-01-04 10:26:59 +01:00
longlong.h Update copyright years. 2021-01-04 10:26:59 +01:00
lto-symtab.h Update copyright years. 2021-01-04 10:26:59 +01:00
md5.h Update copyright years. 2021-01-04 10:26:59 +01:00
objalloc.h Update copyright years. 2021-01-04 10:26:59 +01:00
obstack.h Update copyright years. 2021-01-04 10:26:59 +01:00
partition.h Update copyright years. 2021-01-04 10:26:59 +01:00
plugin-api.h Update copyright years. 2021-01-04 10:26:59 +01:00
safe-ctype.h Update copyright years. 2021-01-04 10:26:59 +01:00
sha1.h Update copyright years. 2021-01-04 10:26:59 +01:00
simple-object.h Update copyright years. 2021-01-04 10:26:59 +01:00
sort.h Update copyright years. 2021-01-04 10:26:59 +01:00
splay-tree.h Update copyright years. 2021-01-04 10:26:59 +01:00
symcat.h Update copyright years. 2021-01-04 10:26:59 +01:00
timeval-utils.h Update copyright years. 2021-01-04 10:26:59 +01:00
unique-ptr.h Update copyright years. 2021-01-04 10:26:59 +01:00
vtv-change-permission.h Update copyright years. 2021-01-04 10:26:59 +01:00
xregex2.h Update copyright years. 2021-01-04 10:26:59 +01:00
xregex.h
xtensa-config.h Update copyright years. 2021-01-04 10:26:59 +01:00