modules/_Exit-tests: test _Noreturn too
[gnulib.git] / tests / test-_Exit.c
index 7502153..bc00730 100644 (file)
 
 #include <stdlib.h>
 
+/* But did he ever return?  No he never returned,
+   And his fate is still unlearned ... */
+static _Noreturn void MTA (int);
+
+static _Noreturn void
+Charlie (int n)
+{
+  MTA (n - 1);
+}
+
+static void
+MTA (int n)
+{
+  if (n < 0)
+    _Exit (81);
+  Charlie (n - 1);
+}
+
 int
-main ()
+main (int argc, char **argv)
 {
-  _Exit (81);
+  MTA (argc + !!argv);
 }