about summary refs log tree commit diff
path: root/setjmp
diff options
context:
space:
mode:
Diffstat (limited to 'setjmp')
-rw-r--r--setjmp/jmpbug.c20
1 files changed, 14 insertions, 6 deletions
diff --git a/setjmp/jmpbug.c b/setjmp/jmpbug.c
index 57a1de0978..0dbf7f9231 100644
--- a/setjmp/jmpbug.c
+++ b/setjmp/jmpbug.c
@@ -10,23 +10,31 @@ sub5 (jmp_buf buf)
   longjmp (buf, 1);
 }
 
-int
-main (void)
+void
+test (int x)
 {
   jmp_buf buf;
   char *foo;
   int arr[100];
 
-  arr[77] = 76;
+  arr[77] = x;
   if (setjmp (buf))
     {
       printf ("made it ok; %d\n", arr[77]);
-      exit (0);
+      return;
     }
 
   foo = (char *) alloca (128);
   sub5 (buf);
+}
+
+int
+main (void)
+{
+  int i;
+
+  for (i = 123; i < 345; ++i)
+    test (i);
 
-  /* NOTREACHED */
-  return 1;
+  return 0;
 }