blob: 05d24f4901133ebeb94cdcde481583dee29f2e12 [file] [log] [blame]
/* { dg-do run } */
#define vector __attribute__((vector_size(16) ))
/* Check whether register declaration of vector type still
allow us to subscript this type. */
typedef vector short myvec_t;
struct vec_s {
vector short member;
};
#if defined(__cplusplus) && __cplusplus >= 201703L
#define register /* nothing */
#endif
int main () {
register short vector v0 = {1,2,3,4,5,6,7};
register myvec_t v1 = {1,2,3,4,5,6,7};
register struct vec_s v2;
v2.member = v1;
short r = v0[0] + v1[1] + v2.member[2];
if (r != 6)
__builtin_abort ();
return 0;
}