From 2967685e3add318dbd962a00e78e7c38d303362a Mon Sep 17 00:00:00 2001 From: Richard Henderson Date: Thu, 9 Dec 2004 14:56:57 -0800 Subject: [PATCH] Testcase for PR c/18282. From-SVN: r91979 --- gcc/testsuite/gcc.dg/attr-mode-2.c | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) create mode 100644 gcc/testsuite/gcc.dg/attr-mode-2.c diff --git a/gcc/testsuite/gcc.dg/attr-mode-2.c b/gcc/testsuite/gcc.dg/attr-mode-2.c new file mode 100644 index 00000000000..1a025212e37 --- /dev/null +++ b/gcc/testsuite/gcc.dg/attr-mode-2.c @@ -0,0 +1,22 @@ +/* PR c/18282 */ +/* { dg-do compile } */ +/* { dg-options "" } */ + +typedef int tword __attribute__((mode(word))); + +typedef enum { B1 = 1 } B; +typedef enum { C1 = 1 } C __attribute__ ((mode(QI))); +typedef enum { D1 = 1 } __attribute__ ((mode(word))) D; + +B __attribute__ ((mode (QI))) bqi; +B __attribute__ ((mode (word))) bword; + +int sqi[sizeof (bqi) == 1 ? 1 : -1]; +int sword[sizeof (bword) == sizeof(tword) ? 1 : -1]; +int sc[sizeof (C) == 1 ? 1 : -1]; +int sd[sizeof (D) == sizeof(tword) ? 1 : -1]; + +int aqi[__alignof (bqi) == 1 ? 1 : -1]; +int aword[__alignof (bword) == __alignof(tword) ? 1 : -1]; +int ac[__alignof (C) == 1 ? 1 : -1]; +int ad[__alignof (D) == __alignof(tword) ? 1 : -1]; -- 2.30.2