This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Remove PERLIO_FUNCS_CONST
authorKarl Williamson <khw@cpan.org>
Thu, 23 Jul 2020 15:24:06 +0000 (09:24 -0600)
committerKarl Williamson <khw@cpan.org>
Wed, 18 Nov 2020 12:15:43 +0000 (05:15 -0700)
As the comment said, this was temporary until vtables got to be all
const

perl.h
perlio.h
perliol.h

diff --git a/perl.h b/perl.h
index 2358a70..70112bd 100644 (file)
--- a/perl.h
+++ b/perl.h
@@ -135,9 +135,6 @@ Otherwise ends a section of code already begun by a C<L</START_EXTERN_C>>.
 #  endif
 #endif
 
 #  endif
 #endif
 
-/* this used to be off by default, now its on, see perlio.h */
-#define PERLIO_FUNCS_CONST
-
 #ifdef PERL_IMPLICIT_CONTEXT
 #  ifndef MULTIPLICITY
 #    define MULTIPLICITY
 #ifdef PERL_IMPLICIT_CONTEXT
 #  ifndef MULTIPLICITY
 #    define MULTIPLICITY
index ee16ab8..836ff6f 100644 (file)
--- a/perlio.h
+++ b/perlio.h
@@ -63,15 +63,8 @@ typedef PerlIOl *PerlIO;
 #define PerlIO PerlIO
 #define PERLIO_LAYERS 1
 
 #define PerlIO PerlIO
 #define PERLIO_LAYERS 1
 
-/* PERLIO_FUNCS_CONST is now on by default for efficiency, PERLIO_FUNCS_CONST
-   can be removed 1 day once stable & then PerlIO vtables are permanently RO */
-#ifdef PERLIO_FUNCS_CONST
 #define PERLIO_FUNCS_DECL(funcs) const PerlIO_funcs funcs
 #define PERLIO_FUNCS_CAST(funcs) (PerlIO_funcs*)(funcs)
 #define PERLIO_FUNCS_DECL(funcs) const PerlIO_funcs funcs
 #define PERLIO_FUNCS_CAST(funcs) (PerlIO_funcs*)(funcs)
-#else
-#define PERLIO_FUNCS_DECL(funcs) PerlIO_funcs funcs
-#define PERLIO_FUNCS_CAST(funcs) (funcs)
-#endif
 
 PERL_CALLCONV void PerlIO_define_layer(pTHX_ PerlIO_funcs *tab);
 PERL_CALLCONV PerlIO_funcs *PerlIO_find_layer(pTHX_ const char *name,
 
 PERL_CALLCONV void PerlIO_define_layer(pTHX_ PerlIO_funcs *tab);
 PERL_CALLCONV PerlIO_funcs *PerlIO_find_layer(pTHX_ const char *name,
index 40b4224..6610061 100644 (file)
--- a/perliol.h
+++ b/perliol.h
@@ -106,23 +106,16 @@ struct _PerlIO {
 #define PerlIOValid(f)     ((f) && *(f))
 
 /*--------------------------------------------------------------------------------------*/
 #define PerlIOValid(f)     ((f) && *(f))
 
 /*--------------------------------------------------------------------------------------*/
-/* Data exports - EXTCONST rather than extern is needed for Cygwin */
-#undef EXTPERLIO 
-#ifdef PERLIO_FUNCS_CONST
-#define EXTPERLIO EXTCONST
-#else
-#define EXTPERLIO EXT
-#endif
-EXTPERLIO PerlIO_funcs PerlIO_unix;
-EXTPERLIO PerlIO_funcs PerlIO_perlio;
-EXTPERLIO PerlIO_funcs PerlIO_stdio;
-EXTPERLIO PerlIO_funcs PerlIO_crlf;
-EXTPERLIO PerlIO_funcs PerlIO_utf8;
-EXTPERLIO PerlIO_funcs PerlIO_byte;
-EXTPERLIO PerlIO_funcs PerlIO_raw;
-EXTPERLIO PerlIO_funcs PerlIO_pending;
+EXTCONST PerlIO_funcs PerlIO_unix;
+EXTCONST PerlIO_funcs PerlIO_perlio;
+EXTCONST PerlIO_funcs PerlIO_stdio;
+EXTCONST PerlIO_funcs PerlIO_crlf;
+EXTCONST PerlIO_funcs PerlIO_utf8;
+EXTCONST PerlIO_funcs PerlIO_byte;
+EXTCONST PerlIO_funcs PerlIO_raw;
+EXTCONST PerlIO_funcs PerlIO_pending;
 #ifdef WIN32
 #ifdef WIN32
-EXTPERLIO PerlIO_funcs PerlIO_win32;
+EXTCONST PerlIO_funcs PerlIO_win32;
 #endif
 PERL_CALLCONV PerlIO *PerlIO_allocate(pTHX);
 PERL_CALLCONV SV *PerlIO_arg_fetch(PerlIO_list_t *av, IV n);
 #endif
 PERL_CALLCONV PerlIO *PerlIO_allocate(pTHX);
 PERL_CALLCONV SV *PerlIO_arg_fetch(PerlIO_list_t *av, IV n);