summaryrefslogtreecommitdiffstats
path: root/meta/recipes-devtools/autoconf/autoconf/0001-specify-void-prototype-for-functions-with-no-paramet.patch
blob: 4d8aa296cd20961673fa88ba09fb23913b9a04cc (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
From 7ccfea413216bddd988823acf4e93421ea0f7f9f Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Tue, 16 Aug 2022 18:35:45 -0700
Subject: [PATCH] specify void prototype for functions with no parameters

Compilers defaulting to C99 flag such functions as warning which fails
to compile when using -Werror

Fixes
error: a function declaration without a prototype is deprecated in all versions of C [-Werror,-Wstrict-prototypes]

Upstream-Status: Submitted [https://lists.gnu.org/archive/html/autoconf-patches/2022-08/msg00003.html]
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 lib/autoconf/c.m4 | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

--- a/lib/autoconf/c.m4
+++ b/lib/autoconf/c.m4
@@ -127,7 +127,7 @@ m4_if([$2], [main], ,
 [/* Override any GCC internal prototype to avoid an error.
    Use char because int might match the return type of a GCC
    builtin and then its argument prototype would still apply.  */
-char $2 ();])], [return $2 ();])])
+char $2 (void);])], [return $2 ();])])
 
 
 # AC_LANG_FUNC_LINK_TRY(C)(FUNCTION)
@@ -151,7 +151,7 @@ m4_define([AC_LANG_FUNC_LINK_TRY(C)],
 #define $1 innocuous_$1
 
 /* System header to define __stub macros and hopefully few prototypes,
-   which can conflict with char $1 (); below.  */
+   which can conflict with char $1 (void); below.  */
 
 #include <limits.h>
 #undef $1
@@ -162,7 +162,7 @@ m4_define([AC_LANG_FUNC_LINK_TRY(C)],
 #ifdef __cplusplus
 extern "C"
 #endif
-char $1 ();
+char $1 (void);
 /* The GNU C library defines this for functions which it implements
     to always fail with ENOSYS.  Some functions are actually named
     something starting with __ and the normal name is an alias.  */
@@ -252,7 +252,7 @@ dnl other built-in extern "C" functions,
 dnl when it actually happens.
 [AC_LANG_PROGRAM([[$1
 namespace conftest {
-  extern "C" int $2 ();
+  extern "C" int $2 (void);
 }]],
 [[return conftest::$2 ();]])])
 
@@ -2457,7 +2457,7 @@ using std::strcmp;
 
 namespace {
 
-void test_exception_syntax()
+void test_exception_syntax(void)
 {
   try {
     throw "test";