From 76224959ba5962da900c87baa0b8a7d184acb577 Mon Sep 17 00:00:00 2001 From: Paul Eggert Date: Wed, 24 Apr 2024 12:43:28 -0700 Subject: [PATCH] c32srtombs,mbsrtoc32s,mbsrtowcs,wcsrtombs: pacify GCC 14 MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit * lib/c32srtombs-state.c (_gl_c32srtombs_state): * lib/mbsrtoc32s-state.c (_gl_mbsrtoc32s_state): * lib/mbsrtowcs-state.c (_gl_mbsrtowcs_state): * lib/wcsrtombs-state.c (_gl_wcsrtombs_state): Add an extern decl for a “private” extern symbol, to pacify GCC 14’s -Wmissing-variable-declarations option. --- ChangeLog | 10 ++++++++++ lib/c32srtombs-state.c | 3 ++- lib/mbsrtoc32s-state.c | 3 ++- lib/mbsrtowcs-state.c | 3 ++- lib/wcsrtombs-state.c | 3 ++- 5 files changed, 18 insertions(+), 4 deletions(-) diff --git a/ChangeLog b/ChangeLog index 5ab21dd75a..d8ddf140ed 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,13 @@ +2024-04-24 Paul Eggert + + c32srtombs,mbsrtoc32s,mbsrtowcs,wcsrtombs: pacify GCC 14 + * lib/c32srtombs-state.c (_gl_c32srtombs_state): + * lib/mbsrtoc32s-state.c (_gl_mbsrtoc32s_state): + * lib/mbsrtowcs-state.c (_gl_mbsrtowcs_state): + * lib/wcsrtombs-state.c (_gl_wcsrtombs_state): + Add an extern decl for a “private” extern symbol, to pacify GCC + 14’s -Wmissing-variable-declarations option. + 2024-04-23 Paul Eggert manywarnings: update C warnings for GCC 14 diff --git a/lib/c32srtombs-state.c b/lib/c32srtombs-state.c index 8bd5ea32b5..f9a04cf13b 100644 --- a/lib/c32srtombs-state.c +++ b/lib/c32srtombs-state.c @@ -1,5 +1,5 @@ /* Convert 32-bit wide string to string. - Copyright (C) 2008-2023 Free Software Foundation, Inc. + Copyright (C) 2008-2024 Free Software Foundation, Inc. Written by Bruno Haible , 2020. This file is free software: you can redistribute it and/or modify @@ -20,6 +20,7 @@ #include /* Internal state used by the functions c32srtombs() and c32snrtombs(). */ +extern mbstate_t _gl_c32srtombs_state; mbstate_t _gl_c32srtombs_state /* The state must initially be in the "initial state"; so, zero-initialize it. On most systems, putting it into BSS is sufficient. Not so on Mac OS X 10.3, diff --git a/lib/mbsrtoc32s-state.c b/lib/mbsrtoc32s-state.c index 91a18fdd74..26c6f4a53e 100644 --- a/lib/mbsrtoc32s-state.c +++ b/lib/mbsrtoc32s-state.c @@ -1,5 +1,5 @@ /* Convert string to 32-bit wide string. - Copyright (C) 2008-2023 Free Software Foundation, Inc. + Copyright (C) 2008-2024 Free Software Foundation, Inc. Written by Bruno Haible , 2020. This file is free software: you can redistribute it and/or modify @@ -20,6 +20,7 @@ #include /* Internal state used by the functions mbsrtoc32s() and mbsnrtoc32s(). */ +extern mbstate_t _gl_mbsrtoc32s_state; mbstate_t _gl_mbsrtoc32s_state /* The state must initially be in the "initial state"; so, zero-initialize it. On most systems, putting it into BSS is sufficient. Not so on Mac OS X 10.3, diff --git a/lib/mbsrtowcs-state.c b/lib/mbsrtowcs-state.c index 0949a370c8..86a32a95ca 100644 --- a/lib/mbsrtowcs-state.c +++ b/lib/mbsrtowcs-state.c @@ -1,5 +1,5 @@ /* Convert string to wide string. - Copyright (C) 2008-2023 Free Software Foundation, Inc. + Copyright (C) 2008-2024 Free Software Foundation, Inc. Written by Bruno Haible , 2008. This file is free software: you can redistribute it and/or modify @@ -20,6 +20,7 @@ #include /* Internal state used by the functions mbsrtowcs() and mbsnrtowcs(). */ +extern mbstate_t _gl_mbsrtowcs_state; mbstate_t _gl_mbsrtowcs_state /* The state must initially be in the "initial state"; so, zero-initialize it. On most systems, putting it into BSS is sufficient. Not so on Mac OS X 10.3, diff --git a/lib/wcsrtombs-state.c b/lib/wcsrtombs-state.c index c7d47c472e..764f3607cf 100644 --- a/lib/wcsrtombs-state.c +++ b/lib/wcsrtombs-state.c @@ -1,5 +1,5 @@ /* Convert wide string to string. - Copyright (C) 2008-2023 Free Software Foundation, Inc. + Copyright (C) 2008-2024 Free Software Foundation, Inc. Written by Bruno Haible , 2008. This file is free software: you can redistribute it and/or modify @@ -20,6 +20,7 @@ #include /* Internal state used by the functions wcsrtombs() and wcsnrtombs(). */ +extern mbstate_t _gl_wcsrtombs_state; mbstate_t _gl_wcsrtombs_state /* The state must initially be in the "initial state"; so, zero-initialize it. On most systems, putting it into BSS is sufficient. Not so on Mac OS X 10.3, -- 2.39.5