167754Smsmith// PRs 16387 and 16389 267754Smsmith// We were treating alignof (sa.a) as alignof (typeof (sa.a)), which is 367754Smsmith// wrong for some fields. 467754Smsmith 567754Smsmith// { dg-do run } 667754Smsmith 767754Smsmithextern "C" void abort(); 8217365Sjkim 9217365Sjkimstruct A 1070243Smsmith{ 1167754Smsmith double a; 12217365Sjkim} sa; 13217365Sjkim 14217365Sjkimstruct B 15217365Sjkim{ 16217365Sjkim char c; 17217365Sjkim double b; 18217365Sjkim} sb; 19217365Sjkim 20217365Sjkimint main() 21217365Sjkim{ 22217365Sjkim if (__alignof (sa) != __alignof (sa.a) 23217365Sjkim || __alignof (sb) != __alignof (sb.b)) 24217365Sjkim abort(); 25217365Sjkim} 2667754Smsmith