1 // RUN: %clang_cc1 -triple powerpc-ibm-aix-xcoff -Wpacked \ 2 // RUN: -fdump-record-layouts -fsyntax-only -verify -x c++ < %s | \ 3 // RUN: FileCheck %s 4 5 // RUN: %clang_cc1 -triple powerpc64-ibm-aix-xcoff -Wpacked \ 6 // RUN: -fdump-record-layouts -fsyntax-only -verify -x c++ < %s | \ 7 // RUN: FileCheck %s 8 9 // expected-no-diagnostics 10 11 struct A { 12 double d; 13 }; 14 15 struct B { 16 char x[8]; 17 }; 18 19 struct [[gnu::packed]] C : B, A { 20 char x alignas(4)[8]; 21 }; 22 23 int b = sizeof(C); 24 25 // CHECK: 0 | struct C 26 // CHECK-NEXT: 0 | struct B (base) 27 // CHECK-NEXT: 0 | char[8] x 28 // CHECK-NEXT: 8 | struct A (base) 29 // CHECK-NEXT: 8 | double d 30 // CHECK-NEXT: 16 | char[8] x 31 // CHECK-NEXT: | [sizeof=24, dsize=24, align=4, preferredalign=4, 32 // CHECK-NEXT: | nvsize=24, nvalign=4, preferrednvalign=4] 33