OSDN Git Service

Add bugs corresponding to PRs 16243 and 16245
authormeissner <meissner@138bc75d-0d04-0410-961f-82ee72b054a4>
Thu, 18 Jun 1998 12:13:20 +0000 (12:13 +0000)
committermeissner <meissner@138bc75d-0d04-0410-961f-82ee72b054a4>
Thu, 18 Jun 1998 12:13:20 +0000 (12:13 +0000)
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@20561 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/testsuite/gcc.c-torture/ChangeLog
gcc/testsuite/gcc.c-torture/execute/980618-1.c [new file with mode: 0644]
gcc/testsuite/gcc.c-torture/execute/980618-2.c [new file with mode: 0644]

index 9a52fd5..28832d4 100644 (file)
@@ -1,3 +1,7 @@
+Thu Jun 18 15:12:30 1998  Michael Meissner  <meissner@cygnus.com>
+
+       * execute/980618-{1,2}.c: New tests that showed up m32r bugs.
+
 Fri Jun  5 21:54:26 1997  J"orn Rennecke <amylaar@cygnus.co.uk>
 
        * execute/980605-1.c: New test.
diff --git a/gcc/testsuite/gcc.c-torture/execute/980618-1.c b/gcc/testsuite/gcc.c-torture/execute/980618-1.c
new file mode 100644 (file)
index 0000000..59db7f2
--- /dev/null
@@ -0,0 +1,16 @@
+void func(int, int);
+
+int main()
+{
+        int x = 7;
+        func(!x, !7);
+       exit (0);
+}
+
+void func(int x, int y)
+{
+        if (x == y)
+                return;
+        else
+                abort ();
+}
diff --git a/gcc/testsuite/gcc.c-torture/execute/980618-2.c b/gcc/testsuite/gcc.c-torture/execute/980618-2.c
new file mode 100644 (file)
index 0000000..c97e19e
--- /dev/null
@@ -0,0 +1,66 @@
+typedef char CHAR;
+typedef short SHORT;
+typedef int INT;
+typedef long LONG;
+typedef float FLOAT;
+typedef unsigned char UCHAR;
+typedef unsigned short USHORT;
+typedef unsigned int UINT;
+typedef unsigned long ULONG;
+typedef double DOUBLE;
+#if __STDC__
+typedef signed char SCHAR;
+typedef long double LDOUBLE;
+#endif
+
+int 
+main ()
+{
+  typedef union
+    {
+      CHAR c;
+      SHORT s;
+      INT i;
+      UCHAR uc;
+      USHORT us;
+      UINT ui;
+      LONG l;
+      ULONG ul;
+      FLOAT f;
+      DOUBLE d;
+#if __STDC__
+      SCHAR sc;
+      LDOUBLE ld;
+#endif
+    }
+  D;
+  auto D D1;
+  D1.c = 7;
+  {
+    auto struct
+      {
+       CHAR c;
+       SHORT s;
+       INT i;
+       UCHAR uc;
+       USHORT us;
+       UINT ui;
+       LONG l;
+       ULONG ul;
+       FLOAT f;
+       DOUBLE d;
+#if __STDC__
+       SCHAR sc;
+       LDOUBLE ld;
+#endif
+      }
+    F;
+    F.c = 7;
+    if ((D1.c && F.c) != 1)
+      abort ();
+    if ((F.c && D1.c) != 1)
+      abort ();
+  }
+
+  exit (0);
+}