gcc 2017-04-05 Bernd Edlinger * doc/extend.texi: Document the always_alias type attribute. * alias.c (get_alias_set): Honor the always_alias attribute. (record_component_aliases): Don't ignore the always_alias attribute. * tree.c (build_pointer_type_for_mode, build_reference_type_for_mode): Add the always_alias attribute. gcc/c-family 2017-04-05 Bernd Edlinger * c-attribs.c (c_common_attribute_tab): Add the always_alias attribute. gcc/cp 2017-04-05 Bernd Edlinger * class.c (fixup_attribute_variants): Add the always_alias attribute. (finish_struct_1): Add an always_alias attribute if required by C++17. * decl.c (start_enum): Likewise. * pt.c (lookup_template_class_1): Add the always_alias attribute. * typeck2.c (cxx_type_contains_byte_buffer): New function. * cp-tree.h (cxx_type_contains_byte_buffer): Declare.