This came up during the Windows bot failure discussing after D105471 . See
also 3d9a9fa691 .
27 lines
620 B
C
27 lines
620 B
C
struct Empty {};
|
|
struct EmptyMember {
|
|
char i[0];
|
|
};
|
|
struct SingleMember {
|
|
int i;
|
|
};
|
|
|
|
struct PaddingMember {
|
|
int i;
|
|
char c;
|
|
};
|
|
|
|
const unsigned sizeof_empty = sizeof(struct Empty);
|
|
const unsigned sizeof_empty_member = sizeof(struct EmptyMember);
|
|
const unsigned sizeof_single = sizeof(struct SingleMember);
|
|
const unsigned sizeof_padding = sizeof(struct PaddingMember);
|
|
|
|
int main() {
|
|
struct Empty empty;
|
|
struct EmptyMember empty_member;
|
|
struct SingleMember single;
|
|
struct PaddingMember padding;
|
|
// Make sure globals are used.
|
|
return sizeof_empty + sizeof_empty_member + sizeof_single + sizeof_padding;
|
|
}
|