summaryrefslogtreecommitdiff
path: root/cpan/Devel-PPPort/parts/inc
diff options
context:
space:
mode:
Diffstat (limited to 'cpan/Devel-PPPort/parts/inc')
-rw-r--r--cpan/Devel-PPPort/parts/inc/HvNAME6
-rw-r--r--cpan/Devel-PPPort/parts/inc/MY_CXT6
-rw-r--r--cpan/Devel-PPPort/parts/inc/SvPV6
-rw-r--r--cpan/Devel-PPPort/parts/inc/SvREFCNT6
-rw-r--r--cpan/Devel-PPPort/parts/inc/Sv_set6
-rw-r--r--cpan/Devel-PPPort/parts/inc/call6
-rw-r--r--cpan/Devel-PPPort/parts/inc/cop6
-rw-r--r--cpan/Devel-PPPort/parts/inc/exception6
-rw-r--r--cpan/Devel-PPPort/parts/inc/format6
-rw-r--r--cpan/Devel-PPPort/parts/inc/grok6
-rw-r--r--cpan/Devel-PPPort/parts/inc/gv49
-rw-r--r--cpan/Devel-PPPort/parts/inc/limits6
-rw-r--r--cpan/Devel-PPPort/parts/inc/mPUSH6
-rw-r--r--cpan/Devel-PPPort/parts/inc/magic13
-rw-r--r--cpan/Devel-PPPort/parts/inc/memory16
-rw-r--r--cpan/Devel-PPPort/parts/inc/misc7
-rw-r--r--cpan/Devel-PPPort/parts/inc/newCONSTSUB6
-rw-r--r--cpan/Devel-PPPort/parts/inc/newRV6
-rw-r--r--cpan/Devel-PPPort/parts/inc/newSV_type6
-rw-r--r--cpan/Devel-PPPort/parts/inc/newSVpv6
-rw-r--r--cpan/Devel-PPPort/parts/inc/podtest6
-rw-r--r--cpan/Devel-PPPort/parts/inc/ppphbin6
-rw-r--r--cpan/Devel-PPPort/parts/inc/ppphdoc8
-rw-r--r--cpan/Devel-PPPort/parts/inc/ppphtest6
-rw-r--r--cpan/Devel-PPPort/parts/inc/pv_tools6
-rw-r--r--cpan/Devel-PPPort/parts/inc/pvs62
-rw-r--r--cpan/Devel-PPPort/parts/inc/shared_pv12
-rw-r--r--cpan/Devel-PPPort/parts/inc/snprintf6
-rw-r--r--cpan/Devel-PPPort/parts/inc/sprintf6
-rw-r--r--cpan/Devel-PPPort/parts/inc/strlfuncs6
-rw-r--r--cpan/Devel-PPPort/parts/inc/sv_xpvf6
-rw-r--r--cpan/Devel-PPPort/parts/inc/threads6
-rw-r--r--cpan/Devel-PPPort/parts/inc/uv6
-rw-r--r--cpan/Devel-PPPort/parts/inc/variables6
-rw-r--r--cpan/Devel-PPPort/parts/inc/version6
-rw-r--r--cpan/Devel-PPPort/parts/inc/warn6
36 files changed, 213 insertions, 128 deletions
diff --git a/cpan/Devel-PPPort/parts/inc/HvNAME b/cpan/Devel-PPPort/parts/inc/HvNAME
index 135549db26..4d7882c47c 100644
--- a/cpan/Devel-PPPort/parts/inc/HvNAME
+++ b/cpan/Devel-PPPort/parts/inc/HvNAME
@@ -1,12 +1,12 @@
################################################################################
##
-## $Revision: 1 $
+## $Revision: 2 $
## $Author: mhx $
-## $Date: 2009/06/12 12:29:57 +0200 $
+## $Date: 2010/03/07 13:15:44 +0100 $
##
################################################################################
##
-## Version 3.x, Copyright (C) 2004-2009, Marcus Holland-Moritz.
+## Version 3.x, Copyright (C) 2004-2010, Marcus Holland-Moritz.
## Version 2.x, Copyright (C) 2001, Paul Marquess.
## Version 1.x, Copyright (C) 1999, Kenneth Albanowski.
##
diff --git a/cpan/Devel-PPPort/parts/inc/MY_CXT b/cpan/Devel-PPPort/parts/inc/MY_CXT
index d67af01377..8e1cb4f9ac 100644
--- a/cpan/Devel-PPPort/parts/inc/MY_CXT
+++ b/cpan/Devel-PPPort/parts/inc/MY_CXT
@@ -1,12 +1,12 @@
################################################################################
##
-## $Revision: 16 $
+## $Revision: 17 $
## $Author: mhx $
-## $Date: 2009/01/18 14:10:55 +0100 $
+## $Date: 2010/03/07 13:15:48 +0100 $
##
################################################################################
##
-## Version 3.x, Copyright (C) 2004-2009, Marcus Holland-Moritz.
+## Version 3.x, Copyright (C) 2004-2010, Marcus Holland-Moritz.
## Version 2.x, Copyright (C) 2001, Paul Marquess.
## Version 1.x, Copyright (C) 1999, Kenneth Albanowski.
##
diff --git a/cpan/Devel-PPPort/parts/inc/SvPV b/cpan/Devel-PPPort/parts/inc/SvPV
index e81fb684c1..a7aace7458 100644
--- a/cpan/Devel-PPPort/parts/inc/SvPV
+++ b/cpan/Devel-PPPort/parts/inc/SvPV
@@ -1,12 +1,12 @@
################################################################################
##
-## $Revision: 22 $
+## $Revision: 23 $
## $Author: mhx $
-## $Date: 2009/01/18 14:10:54 +0100 $
+## $Date: 2010/03/07 13:15:47 +0100 $
##
################################################################################
##
-## Version 3.x, Copyright (C) 2004-2009, Marcus Holland-Moritz.
+## Version 3.x, Copyright (C) 2004-2010, Marcus Holland-Moritz.
## Version 2.x, Copyright (C) 2001, Paul Marquess.
## Version 1.x, Copyright (C) 1999, Kenneth Albanowski.
##
diff --git a/cpan/Devel-PPPort/parts/inc/SvREFCNT b/cpan/Devel-PPPort/parts/inc/SvREFCNT
index 46c5deb356..3a2f849802 100644
--- a/cpan/Devel-PPPort/parts/inc/SvREFCNT
+++ b/cpan/Devel-PPPort/parts/inc/SvREFCNT
@@ -1,12 +1,12 @@
################################################################################
##
-## $Revision: 5 $
+## $Revision: 6 $
## $Author: mhx $
-## $Date: 2009/01/18 14:10:52 +0100 $
+## $Date: 2010/03/07 13:15:45 +0100 $
##
################################################################################
##
-## Version 3.x, Copyright (C) 2004-2009, Marcus Holland-Moritz.
+## Version 3.x, Copyright (C) 2004-2010, Marcus Holland-Moritz.
## Version 2.x, Copyright (C) 2001, Paul Marquess.
## Version 1.x, Copyright (C) 1999, Kenneth Albanowski.
##
diff --git a/cpan/Devel-PPPort/parts/inc/Sv_set b/cpan/Devel-PPPort/parts/inc/Sv_set
index 95cf2d672e..2c2ff448f0 100644
--- a/cpan/Devel-PPPort/parts/inc/Sv_set
+++ b/cpan/Devel-PPPort/parts/inc/Sv_set
@@ -1,12 +1,12 @@
################################################################################
##
-## $Revision: 7 $
+## $Revision: 8 $
## $Author: mhx $
-## $Date: 2009/01/18 14:10:53 +0100 $
+## $Date: 2010/03/07 13:15:46 +0100 $
##
################################################################################
##
-## Version 3.x, Copyright (C) 2004-2009, Marcus Holland-Moritz.
+## Version 3.x, Copyright (C) 2004-2010, Marcus Holland-Moritz.
## Version 2.x, Copyright (C) 2001, Paul Marquess.
## Version 1.x, Copyright (C) 1999, Kenneth Albanowski.
##
diff --git a/cpan/Devel-PPPort/parts/inc/call b/cpan/Devel-PPPort/parts/inc/call
index 85159e22a8..d8f2046be6 100644
--- a/cpan/Devel-PPPort/parts/inc/call
+++ b/cpan/Devel-PPPort/parts/inc/call
@@ -1,12 +1,12 @@
################################################################################
##
-## $Revision: 19 $
+## $Revision: 20 $
## $Author: mhx $
-## $Date: 2009/01/23 18:27:48 +0100 $
+## $Date: 2010/03/07 13:15:46 +0100 $
##
################################################################################
##
-## Version 3.x, Copyright (C) 2004-2009, Marcus Holland-Moritz.
+## Version 3.x, Copyright (C) 2004-2010, Marcus Holland-Moritz.
## Version 2.x, Copyright (C) 2001, Paul Marquess.
## Version 1.x, Copyright (C) 1999, Kenneth Albanowski.
##
diff --git a/cpan/Devel-PPPort/parts/inc/cop b/cpan/Devel-PPPort/parts/inc/cop
index 7c8674112d..a797109a4f 100644
--- a/cpan/Devel-PPPort/parts/inc/cop
+++ b/cpan/Devel-PPPort/parts/inc/cop
@@ -1,12 +1,12 @@
################################################################################
##
-## $Revision: 8 $
+## $Revision: 9 $
## $Author: mhx $
-## $Date: 2009/01/18 14:10:54 +0100 $
+## $Date: 2010/03/07 13:15:47 +0100 $
##
################################################################################
##
-## Version 3.x, Copyright (C) 2004-2009, Marcus Holland-Moritz.
+## Version 3.x, Copyright (C) 2004-2010, Marcus Holland-Moritz.
## Version 2.x, Copyright (C) 2001, Paul Marquess.
## Version 1.x, Copyright (C) 1999, Kenneth Albanowski.
##
diff --git a/cpan/Devel-PPPort/parts/inc/exception b/cpan/Devel-PPPort/parts/inc/exception
index 122277bbb1..5fcc99d8c8 100644
--- a/cpan/Devel-PPPort/parts/inc/exception
+++ b/cpan/Devel-PPPort/parts/inc/exception
@@ -1,12 +1,12 @@
################################################################################
##
-## $Revision: 7 $
+## $Revision: 8 $
## $Author: mhx $
-## $Date: 2009/01/18 14:10:53 +0100 $
+## $Date: 2010/03/07 13:15:46 +0100 $
##
################################################################################
##
-## Version 3.x, Copyright (C) 2004-2009, Marcus Holland-Moritz.
+## Version 3.x, Copyright (C) 2004-2010, Marcus Holland-Moritz.
## Version 2.x, Copyright (C) 2001, Paul Marquess.
## Version 1.x, Copyright (C) 1999, Kenneth Albanowski.
##
diff --git a/cpan/Devel-PPPort/parts/inc/format b/cpan/Devel-PPPort/parts/inc/format
index d39670416c..3a95b10a2b 100644
--- a/cpan/Devel-PPPort/parts/inc/format
+++ b/cpan/Devel-PPPort/parts/inc/format
@@ -1,12 +1,12 @@
################################################################################
##
-## $Revision: 9 $
+## $Revision: 10 $
## $Author: mhx $
-## $Date: 2009/01/18 14:10:55 +0100 $
+## $Date: 2010/03/07 13:15:48 +0100 $
##
################################################################################
##
-## Version 3.x, Copyright (C) 2004-2009, Marcus Holland-Moritz.
+## Version 3.x, Copyright (C) 2004-2010, Marcus Holland-Moritz.
## Version 2.x, Copyright (C) 2001, Paul Marquess.
## Version 1.x, Copyright (C) 1999, Kenneth Albanowski.
##
diff --git a/cpan/Devel-PPPort/parts/inc/grok b/cpan/Devel-PPPort/parts/inc/grok
index 5e32f8e990..1db6db3bca 100644
--- a/cpan/Devel-PPPort/parts/inc/grok
+++ b/cpan/Devel-PPPort/parts/inc/grok
@@ -1,12 +1,12 @@
################################################################################
##
-## $Revision: 16 $
+## $Revision: 17 $
## $Author: mhx $
-## $Date: 2009/01/18 14:10:55 +0100 $
+## $Date: 2010/03/07 13:15:49 +0100 $
##
################################################################################
##
-## Version 3.x, Copyright (C) 2004-2009, Marcus Holland-Moritz.
+## Version 3.x, Copyright (C) 2004-2010, Marcus Holland-Moritz.
## Version 2.x, Copyright (C) 2001, Paul Marquess.
## Version 1.x, Copyright (C) 1999, Kenneth Albanowski.
##
diff --git a/cpan/Devel-PPPort/parts/inc/gv b/cpan/Devel-PPPort/parts/inc/gv
index 1b911e738d..e17d259675 100644
--- a/cpan/Devel-PPPort/parts/inc/gv
+++ b/cpan/Devel-PPPort/parts/inc/gv
@@ -1,12 +1,12 @@
################################################################################
##
-## $Revision: 1 $
+## $Revision: 4 $
## $Author: mhx $
-## $Date: 2009/06/12 12:29:56 +0200 $
+## $Date: 2010/03/07 13:15:44 +0100 $
##
################################################################################
##
-## Version 3.x, Copyright (C) 2004-2009, Marcus Holland-Moritz.
+## Version 3.x, Copyright (C) 2004-2010, Marcus Holland-Moritz.
## Version 2.x, Copyright (C) 2001, Paul Marquess.
## Version 1.x, Copyright (C) 1999, Kenneth Albanowski.
##
@@ -23,6 +23,10 @@ __UNDEFINED__
__UNDEFINED__ GvSVn(gv) GvSV(gv)
__UNDEFINED__ isGV_with_GP(gv) isGV(gv)
+__UNDEFINED__ gv_fetchpvn_flags(name, len, flags, svt) gv_fetchpv(name, flags, svt)
+__UNDEFINED__ gv_fetchsv(name, flags, svt) gv_fetchpv(SvPV_nolen_const(name), flags, svt)
+
+__UNDEFINED__ get_cvn_flags(name, namelen, flags) get_cv(name, flags)
=xsubs
@@ -58,9 +62,44 @@ isGV_with_GP()
OUTPUT:
RETVAL
+int
+get_cvn_flags()
+ PREINIT:
+ CV* xv;
+ CODE:
+ RETVAL = 0;
+ xv = get_cvn_flags("Devel::PPPort::foobar", sizeof("Devel::PPPort::foobar")-1, 0);
+ if(xv == NULL) RETVAL++;
+ xv = get_cvn_flags("Devel::PPPort::foobar", sizeof("Devel::PPPort::foobar")-1, GV_ADDMULTI);
+ if(xv && SvTYPE(xv) == SVt_PVCV) RETVAL++;
+ xv = get_cvn_flags("Devel::PPPort::get_cvn_flags", sizeof("Devel::PPPort::get_cvn_flags")-1, 0);
+ if(xv && SvTYPE(xv) == SVt_PVCV) RETVAL++;
+ OUTPUT:
+ RETVAL
+
+SV*
+gv_fetchpvn_flags()
+ CODE:
+ RETVAL = newRV_inc((SV*)gv_fetchpvn_flags("Devel::PPPort::VERSION", sizeof("Devel::PPPort::VERSION")-1, 0, SVt_PV));
+ OUTPUT:
+ RETVAL
+
+SV*
+gv_fetchsv(name)
+ SV *name
+ CODE:
+ RETVAL = newRV_inc((SV*)gv_fetchsv(name, 0, SVt_PV));
+ OUTPUT:
+ RETVAL
-=tests plan => 2
+=tests plan => 5
ok(Devel::PPPort::GvSVn(), 1);
-ok(Devel::PPPort::isGV_with_GP(), 2)
+ok(Devel::PPPort::isGV_with_GP(), 2);
+
+ok(Devel::PPPort::get_cvn_flags(), 3);
+
+ok(Devel::PPPort::gv_fetchpvn_flags(), \*Devel::PPPort::VERSION);
+
+ok(Devel::PPPort::gv_fetchsv("Devel::PPPort::VERSION"), \*Devel::PPPort::VERSION);
diff --git a/cpan/Devel-PPPort/parts/inc/limits b/cpan/Devel-PPPort/parts/inc/limits
index 25b3940179..b745ee9448 100644
--- a/cpan/Devel-PPPort/parts/inc/limits
+++ b/cpan/Devel-PPPort/parts/inc/limits
@@ -1,12 +1,12 @@
################################################################################
##
-## $Revision: 7 $
+## $Revision: 8 $
## $Author: mhx $
-## $Date: 2009/01/18 14:10:54 +0100 $
+## $Date: 2010/03/07 13:15:47 +0100 $
##
################################################################################
##
-## Version 3.x, Copyright (C) 2004-2009, Marcus Holland-Moritz.
+## Version 3.x, Copyright (C) 2004-2010, Marcus Holland-Moritz.
## Version 2.x, Copyright (C) 2001, Paul Marquess.
## Version 1.x, Copyright (C) 1999, Kenneth Albanowski.
##
diff --git a/cpan/Devel-PPPort/parts/inc/mPUSH b/cpan/Devel-PPPort/parts/inc/mPUSH
index 3613058837..52292c0fad 100644
--- a/cpan/Devel-PPPort/parts/inc/mPUSH
+++ b/cpan/Devel-PPPort/parts/inc/mPUSH
@@ -1,12 +1,12 @@
################################################################################
##
-## $Revision: 11 $
+## $Revision: 12 $
## $Author: mhx $
-## $Date: 2009/01/18 14:10:54 +0100 $
+## $Date: 2010/03/07 13:15:47 +0100 $
##
################################################################################
##
-## Version 3.x, Copyright (C) 2004-2009, Marcus Holland-Moritz.
+## Version 3.x, Copyright (C) 2004-2010, Marcus Holland-Moritz.
## Version 2.x, Copyright (C) 2001, Paul Marquess.
## Version 1.x, Copyright (C) 1999, Kenneth Albanowski.
##
diff --git a/cpan/Devel-PPPort/parts/inc/magic b/cpan/Devel-PPPort/parts/inc/magic
index 31721715ea..558feddd95 100644
--- a/cpan/Devel-PPPort/parts/inc/magic
+++ b/cpan/Devel-PPPort/parts/inc/magic
@@ -1,12 +1,12 @@
################################################################################
##
-## $Revision: 17 $
+## $Revision: 21 $
## $Author: mhx $
-## $Date: 2009/01/18 14:10:55 +0100 $
+## $Date: 2010/03/07 13:15:49 +0100 $
##
################################################################################
##
-## Version 3.x, Copyright (C) 2004-2009, Marcus Holland-Moritz.
+## Version 3.x, Copyright (C) 2004-2010, Marcus Holland-Moritz.
## Version 2.x, Copyright (C) 2001, Paul Marquess.
## Version 1.x, Copyright (C) 1999, Kenneth Albanowski.
##
@@ -358,9 +358,10 @@ ok($h{sv}, 4711);
&Devel::PPPort::sv_usepvn_mg($h{sv}, 'Perl');
ok($h{sv}, 'Perl');
-my $ver = eval qq[qv("v1.2.0")];
-ok($[ < 5.009 || $@ eq '');
-ok($@ || Devel::PPPort::SvVSTRING_mg($ver));
+# v1 is treated as a bareword in older perls...
+my $ver = do { local $SIG{'__WARN__'} = sub {}; eval qq[v1.2.0] };
+ok($] < 5.009 || $@ eq '');
+ok($] < 5.009 || Devel::PPPort::SvVSTRING_mg($ver));
ok(!Devel::PPPort::SvVSTRING_mg(4711));
my $foo = 'bar';
diff --git a/cpan/Devel-PPPort/parts/inc/memory b/cpan/Devel-PPPort/parts/inc/memory
index 761d80c959..4d7ae4828f 100644
--- a/cpan/Devel-PPPort/parts/inc/memory
+++ b/cpan/Devel-PPPort/parts/inc/memory
@@ -1,12 +1,12 @@
################################################################################
##
-## $Revision: 5 $
+## $Revision: 7 $
## $Author: mhx $
-## $Date: 2009/01/18 14:10:53 +0100 $
+## $Date: 2010/03/07 13:15:46 +0100 $
##
################################################################################
##
-## Version 3.x, Copyright (C) 2004-2009, Marcus Holland-Moritz.
+## Version 3.x, Copyright (C) 2004-2010, Marcus Holland-Moritz.
## Version 2.x, Copyright (C) 2001, Paul Marquess.
## Version 1.x, Copyright (C) 1999, Kenneth Albanowski.
##
@@ -29,6 +29,10 @@ __UNDEFINED__ memNE(s1,s2,l) (bcmp(s1,s2,l))
__UNDEFINED__ memEQ(s1,s2,l) (!bcmp(s1,s2,l))
#endif
+__UNDEFINED__ memEQs(s1, l, s2) \
+ (sizeof(s2)-1 == l && memEQ(s1, (s2 ""), (sizeof(s2)-1)))
+__UNDEFINED__ memNEs(s1, l, s2) !memEQs(s1, l, s2)
+
__UNDEFINED__ MoveD(s,d,n,t) memmove((char*)(d),(char*)(s), (n) * sizeof(t))
__UNDEFINED__ CopyD(s,d,n,t) memcpy((char*)(d),(char*)(s), (n) * sizeof(t))
#ifdef HAS_MEMSET
@@ -62,9 +66,13 @@ checkmem()
ZeroD(p, 6, char);
if (memEQ(p, "\0\0\0\0\0\0", 6))
RETVAL++;
+ if (memEQs(p, 6, "\0\0\0\0\0\0"))
+ RETVAL++;
Poison(p, 6, char);
if (memNE(p, "\0\0\0\0\0\0", 6))
RETVAL++;
+ if (memNEs(p, 6, "\0\0\0\0\0\0"))
+ RETVAL++;
Safefree(p);
Newxz(p, 6, char);
@@ -80,5 +88,5 @@ checkmem()
=tests plan => 1
-ok(Devel::PPPort::checkmem(), 4);
+ok(Devel::PPPort::checkmem(), 6);
diff --git a/cpan/Devel-PPPort/parts/inc/misc b/cpan/Devel-PPPort/parts/inc/misc
index 3844bbb317..ac09f8bbe4 100644
--- a/cpan/Devel-PPPort/parts/inc/misc
+++ b/cpan/Devel-PPPort/parts/inc/misc
@@ -1,12 +1,12 @@
################################################################################
##
-## $Revision: 53 $
+## $Revision: 55 $
## $Author: mhx $
-## $Date: 2009/03/31 23:05:55 +0200 $
+## $Date: 2010/03/07 13:15:48 +0100 $
##
################################################################################
##
-## Version 3.x, Copyright (C) 2004-2009, Marcus Holland-Moritz.
+## Version 3.x, Copyright (C) 2004-2010, Marcus Holland-Moritz.
## Version 2.x, Copyright (C) 2001, Paul Marquess.
## Version 1.x, Copyright (C) 1999, Kenneth Albanowski.
##
@@ -475,7 +475,6 @@ Perl_ppaddr_t(string)
Perl_ppaddr_t lower;
PPCODE:
lower = PL_ppaddr[OP_LC];
- PUSHMARK(SP);
mXPUSHs(newSVpv(string, 0));
PUTBACK;
ENTER;
diff --git a/cpan/Devel-PPPort/parts/inc/newCONSTSUB b/cpan/Devel-PPPort/parts/inc/newCONSTSUB
index 4b266d7990..d536f8b319 100644
--- a/cpan/Devel-PPPort/parts/inc/newCONSTSUB
+++ b/cpan/Devel-PPPort/parts/inc/newCONSTSUB
@@ -1,12 +1,12 @@
################################################################################
##
-## $Revision: 15 $
+## $Revision: 16 $
## $Author: mhx $
-## $Date: 2009/01/18 14:10:55 +0100 $
+## $Date: 2010/03/07 13:15:48 +0100 $
##
################################################################################
##
-## Version 3.x, Copyright (C) 2004-2009, Marcus Holland-Moritz.
+## Version 3.x, Copyright (C) 2004-2010, Marcus Holland-Moritz.
## Version 2.x, Copyright (C) 2001, Paul Marquess.
## Version 1.x, Copyright (C) 1999, Kenneth Albanowski.
##
diff --git a/cpan/Devel-PPPort/parts/inc/newRV b/cpan/Devel-PPPort/parts/inc/newRV
index 1467d1ae9d..3d0a2d25ad 100644
--- a/cpan/Devel-PPPort/parts/inc/newRV
+++ b/cpan/Devel-PPPort/parts/inc/newRV
@@ -1,12 +1,12 @@
################################################################################
##
-## $Revision: 9 $
+## $Revision: 10 $
## $Author: mhx $
-## $Date: 2009/01/18 14:10:55 +0100 $
+## $Date: 2010/03/07 13:15:48 +0100 $
##
################################################################################
##
-## Version 3.x, Copyright (C) 2004-2009, Marcus Holland-Moritz.
+## Version 3.x, Copyright (C) 2004-2010, Marcus Holland-Moritz.
## Version 2.x, Copyright (C) 2001, Paul Marquess.
## Version 1.x, Copyright (C) 1999, Kenneth Albanowski.
##
diff --git a/cpan/Devel-PPPort/parts/inc/newSV_type b/cpan/Devel-PPPort/parts/inc/newSV_type
index 06ebdb4100..104dba9370 100644
--- a/cpan/Devel-PPPort/parts/inc/newSV_type
+++ b/cpan/Devel-PPPort/parts/inc/newSV_type
@@ -1,12 +1,12 @@
################################################################################
##
-## $Revision: 1 $
+## $Revision: 2 $
## $Author: mhx $
-## $Date: 2009/06/12 12:29:57 +0200 $
+## $Date: 2010/03/07 13:15:44 +0100 $
##
################################################################################
##
-## Version 3.x, Copyright (C) 2004-2009, Marcus Holland-Moritz.
+## Version 3.x, Copyright (C) 2004-2010, Marcus Holland-Moritz.
## Version 2.x, Copyright (C) 2001, Paul Marquess.
## Version 1.x, Copyright (C) 1999, Kenneth Albanowski.
##
diff --git a/cpan/Devel-PPPort/parts/inc/newSVpv b/cpan/Devel-PPPort/parts/inc/newSVpv
index 3a38549f98..6925a7a34f 100644
--- a/cpan/Devel-PPPort/parts/inc/newSVpv
+++ b/cpan/Devel-PPPort/parts/inc/newSVpv
@@ -1,12 +1,12 @@
################################################################################
##
-## $Revision: 6 $
+## $Revision: 7 $
## $Author: mhx $
-## $Date: 2009/01/18 14:10:51 +0100 $
+## $Date: 2010/03/07 13:15:44 +0100 $
##
################################################################################
##
-## Version 3.x, Copyright (C) 2004-2009, Marcus Holland-Moritz.
+## Version 3.x, Copyright (C) 2004-2010, Marcus Holland-Moritz.
## Version 2.x, Copyright (C) 2001, Paul Marquess.
## Version 1.x, Copyright (C) 1999, Kenneth Albanowski.
##
diff --git a/cpan/Devel-PPPort/parts/inc/podtest b/cpan/Devel-PPPort/parts/inc/podtest
index ceea0cf7a2..83dd440807 100644
--- a/cpan/Devel-PPPort/parts/inc/podtest
+++ b/cpan/Devel-PPPort/parts/inc/podtest
@@ -1,12 +1,12 @@
################################################################################
##
-## $Revision: 9 $
+## $Revision: 10 $
## $Author: mhx $
-## $Date: 2009/01/18 14:10:52 +0100 $
+## $Date: 2010/03/07 13:15:45 +0100 $
##
################################################################################
##
-## Version 3.x, Copyright (C) 2004-2009, Marcus Holland-Moritz.
+## Version 3.x, Copyright (C) 2004-2010, Marcus Holland-Moritz.
## Version 2.x, Copyright (C) 2001, Paul Marquess.
## Version 1.x, Copyright (C) 1999, Kenneth Albanowski.
##
diff --git a/cpan/Devel-PPPort/parts/inc/ppphbin b/cpan/Devel-PPPort/parts/inc/ppphbin
index 583f266a77..83fe71a7d3 100644
--- a/cpan/Devel-PPPort/parts/inc/ppphbin
+++ b/cpan/Devel-PPPort/parts/inc/ppphbin
@@ -1,12 +1,12 @@
################################################################################
##
-## $Revision: 50 $
+## $Revision: 51 $
## $Author: mhx $
-## $Date: 2009/01/18 14:10:54 +0100 $
+## $Date: 2010/03/07 13:15:48 +0100 $
##
################################################################################
##
-## Version 3.x, Copyright (C) 2004-2009, Marcus Holland-Moritz.
+## Version 3.x, Copyright (C) 2004-2010, Marcus Holland-Moritz.
## Version 2.x, Copyright (C) 2001, Paul Marquess.
## Version 1.x, Copyright (C) 1999, Kenneth Albanowski.
##
diff --git a/cpan/Devel-PPPort/parts/inc/ppphdoc b/cpan/Devel-PPPort/parts/inc/ppphdoc
index 62d484106f..addd581e3f 100644
--- a/cpan/Devel-PPPort/parts/inc/ppphdoc
+++ b/cpan/Devel-PPPort/parts/inc/ppphdoc
@@ -1,12 +1,12 @@
################################################################################
##
-## $Revision: 32 $
+## $Revision: 33 $
## $Author: mhx $
-## $Date: 2009/01/18 14:10:54 +0100 $
+## $Date: 2010/03/07 13:15:47 +0100 $
##
################################################################################
##
-## Version 3.x, Copyright (C) 2004-2009, Marcus Holland-Moritz.
+## Version 3.x, Copyright (C) 2004-2010, Marcus Holland-Moritz.
## Version 2.x, Copyright (C) 2001, Paul Marquess.
## Version 1.x, Copyright (C) 1999, Kenneth Albanowski.
##
@@ -336,7 +336,7 @@ module from CPAN.
=head1 COPYRIGHT
-Version 3.x, Copyright (c) 2004-2009, Marcus Holland-Moritz.
+Version 3.x, Copyright (c) 2004-2010, Marcus Holland-Moritz.
Version 2.x, Copyright (C) 2001, Paul Marquess.
diff --git a/cpan/Devel-PPPort/parts/inc/ppphtest b/cpan/Devel-PPPort/parts/inc/ppphtest
index f94cc7de2d..8deccacb74 100644
--- a/cpan/Devel-PPPort/parts/inc/ppphtest
+++ b/cpan/Devel-PPPort/parts/inc/ppphtest
@@ -1,12 +1,12 @@
################################################################################
##
-## $Revision: 46 $
+## $Revision: 47 $
## $Author: mhx $
-## $Date: 2009/01/23 18:28:00 +0100 $
+## $Date: 2010/03/07 13:15:46 +0100 $
##
################################################################################
##
-## Version 3.x, Copyright (C) 2004-2009, Marcus Holland-Moritz.
+## Version 3.x, Copyright (C) 2004-2010, Marcus Holland-Moritz.
## Version 2.x, Copyright (C) 2001, Paul Marquess.
## Version 1.x, Copyright (C) 1999, Kenneth Albanowski.
##
diff --git a/cpan/Devel-PPPort/parts/inc/pv_tools b/cpan/Devel-PPPort/parts/inc/pv_tools
index c7e4c1e907..71f007c8a2 100644
--- a/cpan/Devel-PPPort/parts/inc/pv_tools
+++ b/cpan/Devel-PPPort/parts/inc/pv_tools
@@ -1,12 +1,12 @@
################################################################################
##
-## $Revision: 5 $
+## $Revision: 6 $
## $Author: mhx $
-## $Date: 2009/01/18 14:10:51 +0100 $
+## $Date: 2010/03/07 13:15:44 +0100 $
##
################################################################################
##
-## Version 3.x, Copyright (C) 2004-2009, Marcus Holland-Moritz.
+## Version 3.x, Copyright (C) 2004-2010, Marcus Holland-Moritz.
## Version 2.x, Copyright (C) 2001, Paul Marquess.
## Version 1.x, Copyright (C) 1999, Kenneth Albanowski.
##
diff --git a/cpan/Devel-PPPort/parts/inc/pvs b/cpan/Devel-PPPort/parts/inc/pvs
index 71485ad32e..082b297ec7 100644
--- a/cpan/Devel-PPPort/parts/inc/pvs
+++ b/cpan/Devel-PPPort/parts/inc/pvs
@@ -1,12 +1,12 @@
################################################################################
##
-## $Revision: 11 $
+## $Revision: 14 $
## $Author: mhx $
-## $Date: 2009/06/12 12:19:15 +0200 $
+## $Date: 2010/03/07 13:15:45 +0100 $
##
################################################################################
##
-## Version 3.x, Copyright (C) 2004-2009, Marcus Holland-Moritz.
+## Version 3.x, Copyright (C) 2004-2010, Marcus Holland-Moritz.
## Version 2.x, Copyright (C) 2001, Paul Marquess.
## Version 1.x, Copyright (C) 1999, Kenneth Albanowski.
##
@@ -30,15 +30,21 @@ __UNDEFINED__ STR_WITH_LEN(s) (s ""), (sizeof(s)-1)
__UNDEFINED__ newSVpvs(str) newSVpvn(str "", sizeof(str) - 1)
__UNDEFINED__ newSVpvs_flags(str, flags) newSVpvn_flags(str "", sizeof(str) - 1, flags)
+__UNDEFINED__ newSVpvs_share(str) newSVpvn_share(str "", sizeof(str) - 1, 0)
__UNDEFINED__ sv_catpvs(sv, str) sv_catpvn(sv, str "", sizeof(str) - 1)
__UNDEFINED__ sv_setpvs(sv, str) sv_setpvn(sv, str "", sizeof(str) - 1)
__UNDEFINED__ hv_fetchs(hv, key, lval) hv_fetch(hv, key "", sizeof(key) - 1, lval)
__UNDEFINED__ hv_stores(hv, key, val) hv_store(hv, key "", sizeof(key) - 1, val, 0)
-__UNDEFINED__ gv_fetchpvn_flags(name, len, flags, svt) gv_fetchpv(name, flags, svt)
__UNDEFINED__ gv_fetchpvs(name, flags, svt) gv_fetchpvn_flags(name "", sizeof(name) - 1, flags, svt)
__UNDEFINED__ gv_stashpvs(name, flags) gv_stashpvn(name "", sizeof(name) - 1, flags)
+__UNDEFINED__ get_cvs(name, flags) get_cvn_flags(name "", sizeof(name)-1, flags)
+
+=xsinit
+
+#define NEED_newSVpvn_share
+
=xsubs
void
@@ -53,6 +59,22 @@ newSVpvs_flags()
XPUSHs(newSVpvs_flags("newSVpvs_flags", SVs_TEMP));
XSRETURN(1);
+int
+newSVpvs_share()
+ PREINIT:
+ SV *sv;
+ U32 hash;
+ CODE:
+ RETVAL = 0;
+ PERL_HASH(hash, "pvs", 3);
+ sv = newSVpvs_share("pvs");
+ RETVAL += strEQ(SvPV_nolen_const(sv), "pvs");
+ RETVAL += SvCUR(sv) == 3;
+ RETVAL += SvSHARED_HASH(sv) == hash;
+ SvREFCNT_dec(sv);
+ OUTPUT:
+ RETVAL
+
void
sv_catpvs(sv)
SV *sv
@@ -83,13 +105,6 @@ hv_stores(hv, sv)
(void) hv_stores((HV *) SvRV(hv), "hv_stores", SvREFCNT_inc_simple(sv));
SV*
-gv_fetchpvn_flags()
- CODE:
- RETVAL = newRV_inc((SV*)gv_fetchpvn_flags("Devel::PPPort::VERSION", sizeof("Devel::PPPort::VERSION")-1, 0, SVt_PV));
- OUTPUT:
- RETVAL
-
-SV*
gv_fetchpvs()
CODE:
RETVAL = newRV_inc((SV*)gv_fetchpvs("Devel::PPPort::VERSION", 0, SVt_PV));
@@ -103,13 +118,29 @@ gv_stashpvs()
OUTPUT:
RETVAL
+int
+get_cvs()
+ PREINIT:
+ CV* xv;
+ CODE:
+ RETVAL = 0;
+ xv = get_cvs("Devel::PPPort::foobar", 0);
+ if(xv == NULL) RETVAL++;
+ xv = get_cvs("Devel::PPPort::foobar", GV_ADDMULTI);
+ if(xv && SvTYPE(xv) == SVt_PVCV) RETVAL++;
+ xv = get_cvs("Devel::PPPort::get_cvs", 0);
+ if(xv && SvTYPE(xv) == SVt_PVCV) RETVAL++;
+OUTPUT:
+ RETVAL
-=tests plan => 11
+
+=tests plan => 12
my $x = 'foo';
ok(Devel::PPPort::newSVpvs(), "newSVpvs");
ok(Devel::PPPort::newSVpvs_flags(), "newSVpvs_flags");
+ok(Devel::PPPort::newSVpvs_share(), 3);
Devel::PPPort::sv_catpvs($x);
ok($x, "foosv_catpvs");
@@ -123,6 +154,7 @@ ok(scalar keys %h, 2);
ok(exists $h{'hv_stores'});
ok($h{'hv_stores'}, 4711);
ok(Devel::PPPort::hv_fetchs(\%h), 42);
-ok(Devel::PPPort::gv_fetchpvn_flags(), \*Devel::PPPort::VERSION);
-ok(Devel::PPPort::gv_fetchpvs(), \*Devel::PPPort::VERSION);
-ok(Devel::PPPort::gv_stashpvs(), \%Devel::PPPort::);
+ok(Devel::PPPort::gv_fetchpvs(), \*Devel::PPPort::VERSION);
+ok(Devel::PPPort::gv_stashpvs(), \%Devel::PPPort::);
+
+ok(Devel::PPPort::get_cvs(), 3);
diff --git a/cpan/Devel-PPPort/parts/inc/shared_pv b/cpan/Devel-PPPort/parts/inc/shared_pv
index db779be835..76b5dee061 100644
--- a/cpan/Devel-PPPort/parts/inc/shared_pv
+++ b/cpan/Devel-PPPort/parts/inc/shared_pv
@@ -1,12 +1,12 @@
################################################################################
##
-## $Revision: 5 $
+## $Revision: 7 $
## $Author: mhx $
-## $Date: 2009/01/18 14:10:52 +0100 $
+## $Date: 2010/03/07 13:15:44 +0100 $
##
################################################################################
##
-## Version 3.x, Copyright (C) 2004-2009, Marcus Holland-Moritz.
+## Version 3.x, Copyright (C) 2004-2010, Marcus Holland-Moritz.
## Version 2.x, Copyright (C) 2001, Paul Marquess.
## Version 1.x, Copyright (C) 1999, Kenneth Albanowski.
##
@@ -22,6 +22,12 @@ __UNDEFINED__
=implementation
+/* Hint: newSVpvn_share
+ * The SVs created by this function only mimic the behaviour of
+ * shared PVs without really being shared. Only use if you know
+ * what you're doing.
+ */
+
#ifndef newSVpvn_share
#if { NEED newSVpvn_share }
diff --git a/cpan/Devel-PPPort/parts/inc/snprintf b/cpan/Devel-PPPort/parts/inc/snprintf
index 310bfbaa10..a2d20397d5 100644
--- a/cpan/Devel-PPPort/parts/inc/snprintf
+++ b/cpan/Devel-PPPort/parts/inc/snprintf
@@ -1,12 +1,12 @@
################################################################################
##
-## $Revision: 6 $
+## $Revision: 7 $
## $Author: mhx $
-## $Date: 2009/01/18 14:10:52 +0100 $
+## $Date: 2010/03/07 13:15:45 +0100 $
##
################################################################################
##
-## Version 3.x, Copyright (C) 2004-2009, Marcus Holland-Moritz.
+## Version 3.x, Copyright (C) 2004-2010, Marcus Holland-Moritz.
## Version 2.x, Copyright (C) 2001, Paul Marquess.
## Version 1.x, Copyright (C) 1999, Kenneth Albanowski.
##
diff --git a/cpan/Devel-PPPort/parts/inc/sprintf b/cpan/Devel-PPPort/parts/inc/sprintf
index 6756f9abc9..c7452dc524 100644
--- a/cpan/Devel-PPPort/parts/inc/sprintf
+++ b/cpan/Devel-PPPort/parts/inc/sprintf
@@ -1,12 +1,12 @@
################################################################################
##
-## $Revision: 2 $
+## $Revision: 3 $
## $Author: mhx $
-## $Date: 2009/01/18 14:10:51 +0100 $
+## $Date: 2010/03/07 13:15:44 +0100 $
##
################################################################################
##
-## Version 3.x, Copyright (C) 2004-2009, Marcus Holland-Moritz.
+## Version 3.x, Copyright (C) 2004-2010, Marcus Holland-Moritz.
## Version 2.x, Copyright (C) 2001, Paul Marquess.
## Version 1.x, Copyright (C) 1999, Kenneth Albanowski.
##
diff --git a/cpan/Devel-PPPort/parts/inc/strlfuncs b/cpan/Devel-PPPort/parts/inc/strlfuncs
index d351703e19..f29ccb3f85 100644
--- a/cpan/Devel-PPPort/parts/inc/strlfuncs
+++ b/cpan/Devel-PPPort/parts/inc/strlfuncs
@@ -1,12 +1,12 @@
################################################################################
##
-## $Revision: 6 $
+## $Revision: 7 $
## $Author: mhx $
-## $Date: 2009/01/18 14:10:52 +0100 $
+## $Date: 2010/03/07 13:15:45 +0100 $
##
################################################################################
##
-## Version 3.x, Copyright (C) 2004-2009, Marcus Holland-Moritz.
+## Version 3.x, Copyright (C) 2004-2010, Marcus Holland-Moritz.
## Version 2.x, Copyright (C) 2001, Paul Marquess.
## Version 1.x, Copyright (C) 1999, Kenneth Albanowski.
##
diff --git a/cpan/Devel-PPPort/parts/inc/sv_xpvf b/cpan/Devel-PPPort/parts/inc/sv_xpvf
index 3c990c6e93..c2ad0dfc92 100644
--- a/cpan/Devel-PPPort/parts/inc/sv_xpvf
+++ b/cpan/Devel-PPPort/parts/inc/sv_xpvf
@@ -1,12 +1,12 @@
################################################################################
##
-## $Revision: 10 $
+## $Revision: 11 $
## $Author: mhx $
-## $Date: 2009/01/18 14:10:53 +0100 $
+## $Date: 2010/03/07 13:15:46 +0100 $
##
################################################################################
##
-## Version 3.x, Copyright (C) 2004-2009, Marcus Holland-Moritz.
+## Version 3.x, Copyright (C) 2004-2010, Marcus Holland-Moritz.
## Version 2.x, Copyright (C) 2001, Paul Marquess.
## Version 1.x, Copyright (C) 1999, Kenneth Albanowski.
##
diff --git a/cpan/Devel-PPPort/parts/inc/threads b/cpan/Devel-PPPort/parts/inc/threads
index 518bdf1fcb..7df6bd7f8f 100644
--- a/cpan/Devel-PPPort/parts/inc/threads
+++ b/cpan/Devel-PPPort/parts/inc/threads
@@ -1,12 +1,12 @@
################################################################################
##
-## $Revision: 11 $
+## $Revision: 12 $
## $Author: mhx $
-## $Date: 2009/01/18 14:10:53 +0100 $
+## $Date: 2010/03/07 13:15:47 +0100 $
##
################################################################################
##
-## Version 3.x, Copyright (C) 2004-2009, Marcus Holland-Moritz.
+## Version 3.x, Copyright (C) 2004-2010, Marcus Holland-Moritz.
## Version 2.x, Copyright (C) 2001, Paul Marquess.
## Version 1.x, Copyright (C) 1999, Kenneth Albanowski.
##
diff --git a/cpan/Devel-PPPort/parts/inc/uv b/cpan/Devel-PPPort/parts/inc/uv
index 5fdec7afa0..d1ddd3449d 100644
--- a/cpan/Devel-PPPort/parts/inc/uv
+++ b/cpan/Devel-PPPort/parts/inc/uv
@@ -1,12 +1,12 @@
################################################################################
##
-## $Revision: 17 $
+## $Revision: 18 $
## $Author: mhx $
-## $Date: 2009/01/18 14:10:54 +0100 $
+## $Date: 2010/03/07 13:15:47 +0100 $
##
################################################################################
##
-## Version 3.x, Copyright (C) 2004-2009, Marcus Holland-Moritz.
+## Version 3.x, Copyright (C) 2004-2010, Marcus Holland-Moritz.
## Version 2.x, Copyright (C) 2001, Paul Marquess.
## Version 1.x, Copyright (C) 1999, Kenneth Albanowski.
##
diff --git a/cpan/Devel-PPPort/parts/inc/variables b/cpan/Devel-PPPort/parts/inc/variables
index 515e6200a4..dddeb7984c 100644
--- a/cpan/Devel-PPPort/parts/inc/variables
+++ b/cpan/Devel-PPPort/parts/inc/variables
@@ -1,12 +1,12 @@
################################################################################
##
-## $Revision: 20 $
+## $Revision: 21 $
## $Author: mhx $
-## $Date: 2009/06/12 04:10:50 +0200 $
+## $Date: 2010/03/07 13:15:46 +0100 $
##
################################################################################
##
-## Version 3.x, Copyright (C) 2004-2009, Marcus Holland-Moritz.
+## Version 3.x, Copyright (C) 2004-2010, Marcus Holland-Moritz.
## Version 2.x, Copyright (C) 2001, Paul Marquess.
## Version 1.x, Copyright (C) 1999, Kenneth Albanowski.
##
diff --git a/cpan/Devel-PPPort/parts/inc/version b/cpan/Devel-PPPort/parts/inc/version
index ca8d8a6e35..ce87f76f80 100644
--- a/cpan/Devel-PPPort/parts/inc/version
+++ b/cpan/Devel-PPPort/parts/inc/version
@@ -1,12 +1,12 @@
################################################################################
##
-## $Revision: 10 $
+## $Revision: 11 $
## $Author: mhx $
-## $Date: 2009/01/18 14:10:54 +0100 $
+## $Date: 2010/03/07 13:15:48 +0100 $
##
################################################################################
##
-## Version 3.x, Copyright (C) 2004-2009, Marcus Holland-Moritz.
+## Version 3.x, Copyright (C) 2004-2010, Marcus Holland-Moritz.
## Version 2.x, Copyright (C) 2001, Paul Marquess.
## Version 1.x, Copyright (C) 1999, Kenneth Albanowski.
##
diff --git a/cpan/Devel-PPPort/parts/inc/warn b/cpan/Devel-PPPort/parts/inc/warn
index 76bd881e97..779239fbee 100644
--- a/cpan/Devel-PPPort/parts/inc/warn
+++ b/cpan/Devel-PPPort/parts/inc/warn
@@ -1,12 +1,12 @@
################################################################################
##
-## $Revision: 7 $
+## $Revision: 8 $
## $Author: mhx $
-## $Date: 2009/01/18 14:10:52 +0100 $
+## $Date: 2010/03/07 13:15:45 +0100 $
##
################################################################################
##
-## Version 3.x, Copyright (C) 2004-2009, Marcus Holland-Moritz.
+## Version 3.x, Copyright (C) 2004-2010, Marcus Holland-Moritz.
## Version 2.x, Copyright (C) 2001, Paul Marquess.
## Version 1.x, Copyright (C) 1999, Kenneth Albanowski.
##