This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
PATCH: gh #17275 Silence new warning
authorKarl Williamson <khw@cpan.org>
Sat, 16 Nov 2019 23:13:57 +0000 (16:13 -0700)
committerKarl Williamson <khw@cpan.org>
Fri, 22 Nov 2019 01:19:46 +0000 (18:19 -0700)
This was caused by a static inline function in a header that was
 #included in a file that didn't use it.  Normally, these functions are
 #ifdef'd so as to be visible only to files in which they are used.
 Some compilers warn that the function is defined but not used
 otherwise.  The solution is to remove this function's visibility from
 the file that didn't use it.

embed.fnc
embed.h
invlist_inline.h
proto.h

index 3a75a4c..88f1631 100644 (file)
--- a/embed.fnc
+++ b/embed.fnc
@@ -1878,6 +1878,8 @@ EiR       |SV*    |add_cp_to_invlist      |NULLOK SV* invlist|const UV cp
 Ei     |void   |invlist_extend    |NN SV* const invlist|const UV len
 Ei     |void   |invlist_set_len|NN SV* const invlist|const UV len|const bool offset
 EiRT   |UV     |invlist_highest|NN SV* const invlist
+#endif
+#if defined(PERL_IN_REGCOMP_C) || defined(PERL_IN_OP_C)
 EiRT   |STRLEN*|get_invlist_iter_addr  |NN SV* invlist
 EiT    |void   |invlist_iterinit|NN SV* invlist
 EiRT   |bool   |invlist_iternext|NN SV* invlist|NN UV* start|NN UV* end
diff --git a/embed.h b/embed.h
index 6cd8051..70caca1 100644 (file)
--- a/embed.h
+++ b/embed.h
 #  if defined(PERL_IN_REGCOMP_C) || defined (PERL_IN_DUMP_C) || defined(PERL_IN_OP_C)
 #define _invlist_dump(a,b,c,d) Perl__invlist_dump(aTHX_ a,b,c,d)
 #  endif
-#  if defined(PERL_IN_REGCOMP_C) || defined(PERL_IN_OP_C) || defined(PERL_IN_DOOP_C)
-#define add_cp_to_invlist(a,b) S_add_cp_to_invlist(aTHX_ a,b)
+#  if defined(PERL_IN_REGCOMP_C) || defined(PERL_IN_OP_C)
 #define get_invlist_iter_addr  S_get_invlist_iter_addr
-#define invlist_extend(a,b)    S_invlist_extend(aTHX_ a,b)
-#define invlist_highest                S_invlist_highest
 #define invlist_iterfinish     S_invlist_iterfinish
 #define invlist_iterinit       S_invlist_iterinit
 #define invlist_iternext       S_invlist_iternext
+#  endif
+#  if defined(PERL_IN_REGCOMP_C) || defined(PERL_IN_OP_C) || defined(PERL_IN_DOOP_C)
+#define add_cp_to_invlist(a,b) S_add_cp_to_invlist(aTHX_ a,b)
+#define invlist_extend(a,b)    S_invlist_extend(aTHX_ a,b)
+#define invlist_highest                S_invlist_highest
 #define invlist_set_len(a,b,c) S_invlist_set_len(aTHX_ a,b,c)
 #  endif
 #  if defined(PERL_IN_REGCOMP_C) || defined(PERL_IN_PERL_C) || defined(PERL_IN_UTF8_C)
index 33f8aee..f6ac819 100644 (file)
@@ -161,6 +161,9 @@ S_invlist_highest(SV* const invlist)
            : array[len - 1] - 1;
 }
 
+#endif
+#if defined(PERL_IN_REGCOMP_C) || defined(PERL_IN_OP_C)
+
 PERL_STATIC_INLINE STRLEN*
 S_get_invlist_iter_addr(SV* invlist)
 {
diff --git a/proto.h b/proto.h
index 587be9a..649b6d3 100644 (file)
--- a/proto.h
+++ b/proto.h
@@ -5767,13 +5767,7 @@ PERL_CALLCONV void       Perl__invlist_dump(pTHX_ PerlIO *file, I32 level, const char*
 #define PERL_ARGS_ASSERT__INVLIST_DUMP \
        assert(file); assert(indent); assert(invlist)
 #endif
-#if defined(PERL_IN_REGCOMP_C) || defined(PERL_IN_OP_C) || defined(PERL_IN_DOOP_C)
-#ifndef PERL_NO_INLINE_FUNCTIONS
-PERL_STATIC_INLINE SV* S_add_cp_to_invlist(pTHX_ SV* invlist, const UV cp)
-                       __attribute__warn_unused_result__;
-#define PERL_ARGS_ASSERT_ADD_CP_TO_INVLIST
-#endif
-
+#if defined(PERL_IN_REGCOMP_C) || defined(PERL_IN_OP_C)
 #ifndef PERL_NO_INLINE_FUNCTIONS
 PERL_STATIC_INLINE STRLEN*     S_get_invlist_iter_addr(SV* invlist)
                        __attribute__warn_unused_result__;
@@ -5782,18 +5776,6 @@ PERL_STATIC_INLINE STRLEN*       S_get_invlist_iter_addr(SV* invlist)
 #endif
 
 #ifndef PERL_NO_INLINE_FUNCTIONS
-PERL_STATIC_INLINE void        S_invlist_extend(pTHX_ SV* const invlist, const UV len);
-#define PERL_ARGS_ASSERT_INVLIST_EXTEND        \
-       assert(invlist)
-#endif
-#ifndef PERL_NO_INLINE_FUNCTIONS
-PERL_STATIC_INLINE UV  S_invlist_highest(SV* const invlist)
-                       __attribute__warn_unused_result__;
-#define PERL_ARGS_ASSERT_INVLIST_HIGHEST       \
-       assert(invlist)
-#endif
-
-#ifndef PERL_NO_INLINE_FUNCTIONS
 PERL_STATIC_INLINE void        S_invlist_iterfinish(SV* invlist);
 #define PERL_ARGS_ASSERT_INVLIST_ITERFINISH    \
        assert(invlist)
@@ -5810,6 +5792,26 @@ PERL_STATIC_INLINE bool  S_invlist_iternext(SV* invlist, UV* start, UV* end)
        assert(invlist); assert(start); assert(end)
 #endif
 
+#endif
+#if defined(PERL_IN_REGCOMP_C) || defined(PERL_IN_OP_C) || defined(PERL_IN_DOOP_C)
+#ifndef PERL_NO_INLINE_FUNCTIONS
+PERL_STATIC_INLINE SV* S_add_cp_to_invlist(pTHX_ SV* invlist, const UV cp)
+                       __attribute__warn_unused_result__;
+#define PERL_ARGS_ASSERT_ADD_CP_TO_INVLIST
+#endif
+
+#ifndef PERL_NO_INLINE_FUNCTIONS
+PERL_STATIC_INLINE void        S_invlist_extend(pTHX_ SV* const invlist, const UV len);
+#define PERL_ARGS_ASSERT_INVLIST_EXTEND        \
+       assert(invlist)
+#endif
+#ifndef PERL_NO_INLINE_FUNCTIONS
+PERL_STATIC_INLINE UV  S_invlist_highest(SV* const invlist)
+                       __attribute__warn_unused_result__;
+#define PERL_ARGS_ASSERT_INVLIST_HIGHEST       \
+       assert(invlist)
+#endif
+
 #ifndef PERL_NO_INLINE_FUNCTIONS
 PERL_STATIC_INLINE void        S_invlist_set_len(pTHX_ SV* const invlist, const UV len, const bool offset);
 #define PERL_ARGS_ASSERT_INVLIST_SET_LEN       \