[PATCH] Add a new type attribute always_alias (PR79671)

Bernd Edlinger bernd.edlinger@hotmail.de
Wed Apr 5 09:46:00 GMT 2017


Hi,

this is related to the P1 codegen bug PR79671:
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=79671

Therefore I would like to add this now although
the trunk is already at in stage 4.

I propose to add a new type attribute always_alias that
works like may_alias but unlike may_alias it should
also make instances alias anything.  It is also exposed
in C/C++ as __attribute__((always_alias)).

For C++17 the FE automatically introduces this attribute
at std::byte and all class/struct/union which contain
either a std::byte array or an unsigned char array.

Note that the patch [1] needs to be applied as well,
because otherwise the new attribute will trip several
failures in the libstdc++ testsuite.


Bootstrapped and reg-tested on x86_64-pc-linux-gnu.
Is it OK for trunk?


Thanks
Bernd.


[1] https://gcc.gnu.org/ml/gcc-patches/2017-04/msg00189.html
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: changelog-always-alias.txt
URL: <http://gcc.gnu.org/pipermail/gcc-patches/attachments/20170405/22bb52a7/attachment.txt>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: patch-always-alias.diff
Type: text/x-patch
Size: 8513 bytes
Desc: patch-always-alias.diff
URL: <http://gcc.gnu.org/pipermail/gcc-patches/attachments/20170405/22bb52a7/attachment.bin>


More information about the Gcc-patches mailing list