FAQ
In perl.git, the branch blead has been updated

<http://perl5.git.perl.org/perl.git/commitdiff/8687a6e6de7ce658ece8673ad56c37d0a1d8cbca?hp=4cb26c52ed90189e6e3564a4654b869fe4c4d3e6>

- Log -----------------------------------------------------------------
commit 8687a6e6de7ce658ece8673ad56c37d0a1d8cbca
Author: David Mitchell <davem@iabyn.com>
Date: Mon May 23 15:53:05 2016 +0100

     mathoms.c: consolidate comments

     The head of this source file contains quite a few general comment
     paragraphs. Consolidate them all into one

       /*
        *
        */

     block.

M mathoms.c

commit d7244c9a613101b97077ed781e11a729c347555c
Author: David Mitchell <davem@iabyn.com>
Date: Mon May 23 15:45:20 2016 +0100

     mathoms.c: add explanation why fns must be kept

     See http://nntp.perl.org/group/perl.perl5.porters/236384.

M mathoms.c
-----------------------------------------------------------------------

Summary of changes:
  mathoms.c | 47 +++++++++++++++++++++++++++--------------------
  1 file changed, 27 insertions(+), 20 deletions(-)

diff --git a/mathoms.c b/mathoms.c
index 6c60328..3604d41 100644
--- a/mathoms.c
+++ b/mathoms.c
@@ -21,17 +21,40 @@

  /*
   * This file contains mathoms, various binary artifacts from previous
- * versions of Perl. For binary or source compatibility reasons, though,
- * we cannot completely remove them from the core code.
+ * versions of Perl which we cannot completely remove from the core
+ * code. There are two reasons functions should be here:
+ *
+ * 1) A function has been been replaced by a macro within a minor release,
+ * so XS modules compiled against an older release will expect to
+ * still be able to link against the function
+ * 2) A function Perl_foo(...) with #define foo Perl_foo(aTHX_ ...)
+ * has been replaced by a macro, e.g. #define foo(...) foo_flags(...,0)
+ * but XS code may still explicitly use the long form, i.e.
+ * Perl_foo(aTHX_ ...)
+ *
+ * NOTE: ALL FUNCTIONS IN THIS FILE should have an entry with the 'b' flag in
+ * embed.fnc.
+ *
+ * To move a function to this file, simply cut and paste it here, and change
+ * its embed.fnc entry to additionally have the 'b' flag. If, for some reason
+ * a function you'd like to be treated as mathoms can't be moved from its
+ * current place, simply enclose it between
+ *
+ * #ifndef NO_MATHOMS
+ * ...
+ * #endif
+ *
+ * and add the 'b' flag in embed.fnc.
   *
   * REMEMBER to update makedef.pl when adding a function to mathoms.c whose
   * name doesn't begin with "Perl_".
   *
- * SMP - Oct. 24, 2005
- *
   * The compilation of this file can be suppressed; see INSTALL
   *
+ * Some blurb for perlapi.pod:
+
  =head1 Obsolete backwards compatibility functions
+
  Some of these are also deprecated. You can exclude these from
  your compiled Perl by adding this option to Configure:
  C<-Accflags='-DNO_MATHOMS'>
@@ -51,22 +74,6 @@ C<-Accflags='-DNO_MATHOMS'>
   */
  #else

-/* NOTE ALL FUNCTIONS IN THIS FILE should have an entry with the 'b' flag in
- * embed.fnc.
- *
- * To move a function to this file, simply cut and paste it here, and change
- * its embed.fnc entry to additionally have the 'b' flag. If, for some reason
- * a function you'd like to be treated as mathoms can't be moved from its
- * current place, simply enclose it between
- *
- * #ifndef NO_MATHOMS
- * ...
- * #endif
- *
- * and add the 'b' flag in embed.fnc.
- *
- * */
-
  /* ref() is now a macro using Perl_doref;
   * this version provided for binary compatibility only.
   */

--
Perl5 Master Repository

Search Discussions

Related Discussions

Discussion Navigation
viewthread | post
Discussion Overview
groupperl5-changes @
categoriesperl
postedMay 23, '16 at 3:01p
activeMay 23, '16 at 3:01p
posts1
users1
websiteperl.org

1 user in discussion

Dave Mitchell: 1 post

People

Translate

site design / logo © 2018 Grokbase