[Bast-commits] r3839 - in trunk/Devel-Declare: . lib/Devel

matthewt at dev.catalyst.perl.org matthewt at dev.catalyst.perl.org
Thu Oct 25 01:44:29 GMT 2007


Author: matthewt
Date: 2007-10-25 01:44:28 +0100 (Thu, 25 Oct 2007)
New Revision: 3839

Modified:
   trunk/Devel-Declare/Changes
   trunk/Devel-Declare/Declare.xs
   trunk/Devel-Declare/lib/Devel/Declare.pm
   trunk/Devel-Declare/stolen_chunk_of_toke.c
Log:
0.001003 changes

Modified: trunk/Devel-Declare/Changes
===================================================================
--- trunk/Devel-Declare/Changes	2007-10-24 20:42:22 UTC (rev 3838)
+++ trunk/Devel-Declare/Changes	2007-10-25 00:44:28 UTC (rev 3839)
@@ -1,5 +1,10 @@
 Changes for Devel-Declare
 
+0.001003
+  - internalise definitions for toke.c chunks to save hassle
+  - make NEWSV macro defined via ifndef rather than version check in case
+    of 5.8.8-maint (and 5.8.9)
+
 0.001002
   - compilation fixes for 5.9.5 and -DDEBUGGING
 

Modified: trunk/Devel-Declare/Declare.xs
===================================================================
--- trunk/Devel-Declare/Declare.xs	2007-10-24 20:42:22 UTC (rev 3838)
+++ trunk/Devel-Declare/Declare.xs	2007-10-25 00:44:28 UTC (rev 3839)
@@ -1,4 +1,3 @@
-#define PERL_IN_TOKE_C
 #define PERL_CORE
 #define PERL_NO_GET_CONTEXT
 #include "EXTERN.h"

Modified: trunk/Devel-Declare/lib/Devel/Declare.pm
===================================================================
--- trunk/Devel-Declare/lib/Devel/Declare.pm	2007-10-24 20:42:22 UTC (rev 3838)
+++ trunk/Devel-Declare/lib/Devel/Declare.pm	2007-10-25 00:44:28 UTC (rev 3839)
@@ -4,7 +4,7 @@
 use warnings;
 use 5.008001;
 
-our $VERSION = '0.001002';
+our $VERSION = '0.001003';
 
 # mirrored in Declare.xs as DD_HANDLE_*
 

Modified: trunk/Devel-Declare/stolen_chunk_of_toke.c
===================================================================
--- trunk/Devel-Declare/stolen_chunk_of_toke.c	2007-10-24 20:42:22 UTC (rev 3838)
+++ trunk/Devel-Declare/stolen_chunk_of_toke.c	2007-10-25 00:44:28 UTC (rev 3839)
@@ -19,6 +19,18 @@
 
 /* the following #defines are stolen from assorted headers, not toke.c (mst) */
 
+#define skipspace(a)            S_skipspace(aTHX_ a)
+#define incline(a)              S_incline(aTHX_ a)
+#define filter_gets(a,b,c)      S_filter_gets(aTHX_ a,b,c)
+#define scan_str(a,b,c)         S_scan_str(aTHX_ a,b,c)
+#define scan_word(a,b,c,d,e)    S_scan_word(aTHX_ a,b,c,d,e)
+
+STATIC void     S_incline(pTHX_ char *s);
+STATIC char*    S_skipspace(pTHX_ char *s);
+STATIC char *   S_filter_gets(pTHX_ SV *sv, PerlIO *fp, STRLEN append);
+STATIC char*    S_scan_str(pTHX_ char *start, int keep_quoted, int keep_delims);
+STATIC char*    S_scan_word(pTHX_ char *s, char *dest, STRLEN destlen, int allow_package, STRLEN *slp);
+
 #define DPTR2FPTR(t,p) ((t)PTR2nat(p))  /* data pointer to function pointer */
 #define FPTR2DPTR(t,p) ((t)PTR2nat(p))  /* function pointer to data pointer */
 #define PTR2nat(p)       (PTRV)(p)       /* pointer to integer of PTRSIZE */
@@ -127,8 +139,10 @@
 #  define PL_nexttype           (PL_parser->nexttype)
 #  define PL_nextval            (PL_parser->nextval)
 /* end of backcompat macros form 5.9 toke.c (mst) */
+#endif
 /* we also need this because we define PERL_CORE so handy.h doesn't provide
    it for us (mst) */
+#ifndef
 #define NEWSV(x,len)    newSV(len)
 #endif
 
@@ -395,20 +409,12 @@
  * If so, it sets the current line number and file to the values in the comment.
  */
 
-/* 5.9+ make the char *s in S_incline const and declare it in proto.h so we
-   need to do the same to avoid a prototype mismatch (mst) */
-#ifdef PERL_5_9_PLUS
-#define S_INCLINE_CONST const
-#else
-#define S_INCLINE_CONST
-#endif
-
 STATIC void
-S_incline(pTHX_ S_INCLINE_CONST char *s)
+S_incline(pTHX_ char *s)
 {
     char *t;
-    S_INCLINE_CONST char *n;
-    S_INCLINE_CONST char *e;
+    char *n;
+    char *e;
     char ch;
 
     CopLINE_inc(PL_curcop);
@@ -436,8 +442,7 @@
 	e = t + 1;
     }
     else {
-        /* explicitly cast to char * in case S_INCLINE_CONST in force (mst) */
-	for (t = (char *)s; !isSPACE(*t); t++) ;
+	for (t = s; !isSPACE(*t); t++) ;
 	e = t;
     }
     while (SPACE_OR_TAB(*e) || *e == '\r' || *e == '\f')




More information about the Bast-commits mailing list