https://gcc.gnu.org/bugzilla/show_bug.cgi?id=68703
Richard Sandiford <rsandifo at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |rsandifo at gcc dot gnu.org
--- Comment #11 from Richard Sandiford <rsandifo at gcc dot gnu.org> ---
FWIW, the following adaption of the original testcase still fails on trunk, but
is accepted by Clang:
template <int N = 4>
struct D {
using t = int __attribute__((vector_size(N * sizeof(int))));
t v;
int f1() { return this->v[N-1]; }
int f2() { return v[N-1]; }
};
int main(int ac, char**)
{
D<> d = { { ac } };
return d.f1() + d.f2();
}
Same with a typedef instead of "using". But that's probably just another
instance of PR88600/PR58855.