mirror of
https://github.com/nArnoSNES/tcc-65816.git
synced 2025-02-21 11:29:01 +00:00
40 lines
922 B
C
40 lines
922 B
C
/* bf-ms-attrib.c */
|
|
/* Adapted from Donn Terry <donnte@microsoft.com> testcase
|
|
posted to GCC-patches
|
|
http://gcc.gnu.org/ml/gcc-patches/2000-08/msg00577.html */
|
|
|
|
/* { dg-do run { target *-*-interix* *-*-mingw* *-*-cygwin* } } */
|
|
|
|
/* We don't want the default "pedantic-errors" in this case, since we're
|
|
testing nonstandard stuff to begin with. */
|
|
/* { dg-options "-ansi" } */
|
|
|
|
extern void abort(void);
|
|
|
|
struct one_gcc {
|
|
int d;
|
|
unsigned char a;
|
|
unsigned short b:7;
|
|
char c;
|
|
} __attribute__((__gcc_struct__)) ;
|
|
|
|
|
|
struct one_ms {
|
|
int d;
|
|
unsigned char a;
|
|
unsigned short b:7;
|
|
char c;
|
|
} __attribute__((__ms_struct__));
|
|
|
|
|
|
main()
|
|
{
|
|
/* As long as the sizes are as expected, we know attributes are working.
|
|
bf-ms-layout.c makes sure the right thing happens when the attribute
|
|
is on. */
|
|
if (sizeof(struct one_ms) != 12)
|
|
abort();
|
|
if (sizeof(struct one_gcc) != 8)
|
|
abort();
|
|
}
|