]> gcc.gnu.org Git - gcc.git/commitdiff
20020402-1.c: New test.
authorFranz Sirl <Franz.Sirl-kernel@lauterbach.com>
Tue, 2 Apr 2002 22:01:54 +0000 (22:01 +0000)
committerFranz Sirl <sirl@gcc.gnu.org>
Tue, 2 Apr 2002 22:01:54 +0000 (22:01 +0000)
2002-04-02  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>

* gcc.c-torture/execute/20020402-1.c: New test.

From-SVN: r51762

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

index bce49628b31c6d631010730f6642801dd603a809..88158257f6b0e4fbd0accb153f81e22870c56971 100644 (file)
@@ -1,3 +1,7 @@
+2002-04-02  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
+
+       * gcc.c-torture/execute/20020402-1.c: New test.
+
 2002-04-01  Richard Henderson  <rth@redhat.com>
 
        * gcc.c-torture/compile/920625-1.x: XFAIL -O1.
diff --git a/gcc/testsuite/gcc.c-torture/execute/20020402-1.c b/gcc/testsuite/gcc.c-torture/execute/20020402-1.c
new file mode 100644 (file)
index 0000000..fe2a6f6
--- /dev/null
@@ -0,0 +1,41 @@
+/* derived from PR c/2100 */
+
+extern void abort ();
+extern void exit (int);
+
+#define SMALL_N  2
+#define NUM_ELEM 4
+
+int main(void)
+{
+  int listElem[NUM_ELEM]={30,2,10,5};
+  int listSmall[SMALL_N];
+  int i, j;
+  int posGreatest=-1, greatest=-1;
+
+  for (i=0; i<SMALL_N; i++) { 
+    listSmall[i] = listElem[i];
+    if (listElem[i] > greatest) {
+      posGreatest = i;
+      greatest = listElem[i];
+    }
+  }
+  
+  for (i=SMALL_N; i<NUM_ELEM; i++) { 
+    if (listElem[i] < greatest) {
+      listSmall[posGreatest] = listElem[i];
+      posGreatest = 0;
+      greatest = listSmall[0];
+      for (j=1; j<SMALL_N; j++) 
+       if (listSmall[j] > greatest) {
+         posGreatest = j;
+         greatest = listSmall[j];
+       }
+    }
+  }
+
+  if (listSmall[0] != 5 || listSmall[1] != 2)
+    abort ();
+  exit (0);
+}
+
This page took 0.098095 seconds and 5 git commands to generate.