2b31b68
Submitted upstream:
2b31b68
2b31b68
  <https://gitlab.haskell.org/ghc/ghc/-/merge_requests/9394>
2b31b68
2b31b68
From 6b218717ac85d6dc9104f470cac0b4fb594104f4 Mon Sep 17 00:00:00 2001
2b31b68
From: Florian Weimer <fweimer@redhat.com>
2b31b68
Date: Tue, 22 Nov 2022 15:23:50 +0100
2b31b68
Subject: [PATCH] m4/fp_leading_underscore.m4: Avoid implicit exit function
2b31b68
 declaration
2b31b68
Content-type: text/plain
2b31b68
2b31b68
And switch to a new-style function definition.
2b31b68
2b31b68
Fixes build issues with compilers that do not accept implicit function
2b31b68
declarations.
2b31b68
---
2b31b68
 m4/fp_leading_underscore.m4 | 10 ++++------
2b31b68
 1 file changed, 4 insertions(+), 6 deletions(-)
2b31b68
2b31b68
diff --git a/m4/fp_leading_underscore.m4 b/m4/fp_leading_underscore.m4
2b31b68
index fde57c7625..939cee3b69 100644
2b31b68
--- a/m4/fp_leading_underscore.m4
2b31b68
+++ b/m4/fp_leading_underscore.m4
2b31b68
@@ -32,17 +32,15 @@ struct nlist xYzzY1[] = {{"xYzzY1", 0},{0}};
2b31b68
 struct nlist xYzzY2[] = {{"_xYzzY2", 0},{0}};
2b31b68
 #endif
2b31b68
 
2b31b68
-int main(argc, argv)
2b31b68
-int argc;
2b31b68
-char **argv;
2b31b68
+int main(int argc, char **argv)
2b31b68
 {
2b31b68
 #if defined(HAVE_NLIST_H)
2b31b68
     if(nlist(argv[0], xYzzY1) == 0 && xYzzY1[0].n_value != 0)
2b31b68
-        exit(1);
2b31b68
+        return 1;
2b31b68
     if(nlist(argv[0], xYzzY2) == 0 && xYzzY2[0].n_value != 0)
2b31b68
-        exit(0);
2b31b68
+        return 0;
2b31b68
 #endif
2b31b68
-    exit(1);
2b31b68
+    return 1;
2b31b68
 }]])],[fptools_cv_leading_underscore=yes],[fptools_cv_leading_underscore=no],[fptools_cv_leading_underscore=no])
2b31b68
 ;;
2b31b68
 esac]);
2b31b68
diff -ur ghc-9.4.3.orig/configure ghc-9.4.3/configure
2b31b68
--- ghc-9.4.3.orig/configure	2022-11-03 04:46:32.000000000 +0100
2b31b68
+++ ghc-9.4.3/configure	2022-11-22 16:37:07.812512120 +0100
2b31b68
@@ -17095,17 +17101,15 @@
2b31b68
 struct nlist xYzzY2[] = {{"_xYzzY2", 0},{0}};
2b31b68
 #endif
2b31b68
 
2b31b68
-int main(argc, argv)
2b31b68
-int argc;
2b31b68
-char **argv;
2b31b68
+int main(int argc, char **argv)
2b31b68
 {
2b31b68
 #if defined(HAVE_NLIST_H)
2b31b68
     if(nlist(argv[0], xYzzY1) == 0 && xYzzY1[0].n_value != 0)
2b31b68
-        exit(1);
2b31b68
+        return 1;
2b31b68
     if(nlist(argv[0], xYzzY2) == 0 && xYzzY2[0].n_value != 0)
2b31b68
-        exit(0);
2b31b68
+        return 0;
2b31b68
 #endif
2b31b68
-    exit(1);
2b31b68
+    return 1;
2b31b68
 }
2b31b68
 _ACEOF
2b31b68
 if ac_fn_c_try_run "$LINENO"; then :