Re: [C++ PATCH] Implement P0840, language support for empty objects.

2018-10-03 Thread Jakub Jelinek
On Wed, Oct 03, 2018 at 11:56:15AM -0400, Jason Merrill wrote: > --- a/gcc/c-family/c-lex.c > +++ b/gcc/c-family/c-lex.c > @@ -356,6 +356,8 @@ c_common_has_attribute (cpp_reader *pfile) > || is_attribute_p ("nodiscard", attr_name) > || is_attribute_p ("fall

[C++ PATCH] Implement P0840, language support for empty objects.

2018-10-03 Thread Jason Merrill
The [[no_unique_address]] attribute on a non-static data member enables the equivalent of the empty base optimization. Tested x86_64-pc-linux-gnu, applying to trunk. gcc/cp/ * tree.c (handle_no_unique_addr_attribute): New. (cxx_attribute_table): Add [[no_un