> On Thu, Oct 29, 2020 at 05:00:40PM +0100, Jan Hubicka wrote: > > > > > > That's ugly and will for sure defeat warning / access code > > > when we access this as char[], no? I mean, we could > > > as well use 'int str[1];' here? > > > > Well, we always get char pointer via macro that is IMO OK, but I am also > > not very much in love with this. > > Do we treat signed char [...]; as typeless storage too, or just > what the C++ standard requires (i.e. char, unsigned char and std::byte > where the last one is enum type with unsigned char underlying type)? struct a {signed char b[10];int d;} c; void test () { c.d=1; }
still leads to alias set 0 access, so perhaps this can be improved. Where the standard specifies this? (also coincidentally I have no idea where C++ sets typeless storage to 1 :) Honza > > Jakub >