* gcc.c-torture/compile/20020319-1.c: New test.
authorDavid Edelsohn <edelsohn@gnu.org>
Fri, 22 Mar 2002 18:12:59 +0000 (18:12 +0000)
committerDavid Edelsohn <dje@gcc.gnu.org>
Fri, 22 Mar 2002 18:12:59 +0000 (13:12 -0500)
From-SVN: r51176

gcc/testsuite/ChangeLog
gcc/testsuite/gcc.c-torture/compile/20020319-1.c [new file with mode: 0644]

index f6ae990589f7ed7fce4ca812c73f75366e29ff8c..1ac56509c9b2c034c5312ea573713cbde0f38df4 100644 (file)
@@ -2,6 +2,8 @@
 
         * gcc.dg/20020312-2.c: Add rs6000 target.
 
+       * gcc.c-torture/compile/20020319-1.c: New test.
+
 2002-03-21  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
 
        * g++.old-deja/g++.eh/ia64-1.C: Use [ijkl]_[0-9] as variable names. 
@@ -24,8 +26,6 @@
 
        * gcc.dg/struct-by-value-1.c: New test.
 
-       * gcc.c-torture/compile/20020319-1.c: New test.
-
 2002-03-18  Jakub Jelinek  <jakub@redhat.com>
 
        * g++.dg/opt/conj1.C: New test.
diff --git a/gcc/testsuite/gcc.c-torture/compile/20020319-1.c b/gcc/testsuite/gcc.c-torture/compile/20020319-1.c
new file mode 100644 (file)
index 0000000..be5b9c2
--- /dev/null
@@ -0,0 +1,20 @@
+/* This testcase ICEd in combine.c:do_SUBST() self-test for sign-extended
+CONST_INT because expr.c:expand_expr() was not sign-extending array index
+into constant strings.  */
+
+typedef unsigned char uch;
+extern uch outbuf[];
+extern unsigned outcnt;
+
+extern void flush_outbuf (void);
+
+int zip(void)
+{
+  outcnt = 0;
+
+    {outbuf[outcnt++]=(uch)("\037\213"[0]); if (outcnt==16384) flush_outbuf();};
+    {outbuf[outcnt++]=(uch)("\037\213"[1]); if (outcnt==16384) flush_outbuf();};
+
+  return 0;
+}
+