(root)/
gcc-13.2.0/
gcc/
testsuite/
gcc.dg/
pr36093.c
       1  /* { dg-do compile } */
       2  /* { dg-skip-if "small alignment" { pdp11-*-* } } */
       3  
       4  extern void abort (void);
       5  
       6  typedef struct Bar {
       7        char c[129];
       8  } Bar __attribute__((__aligned__(128)));
       9  
      10  typedef struct Foo {
      11        Bar bar[4];	/* { dg-error "size of array element is not a multiple of its alignment" } */
      12  } Foo;
      13  
      14  Foo foo[4];
      15  
      16  int main()
      17  {
      18     int i, j;
      19     Foo *foop = &foo[0];
      20  
      21     for (i=0; i < 4; i++) {
      22        Bar *bar = &foop->bar[i];
      23        for (j=0; j < 129; j++) {
      24           bar->c[j] = 'a' + i;
      25        }
      26     }
      27  
      28     if (foo[0].bar[3].c[128] != 'd')
      29       abort ();
      30     return 0;
      31  }