Perl 5.6.0, 5.7.0 ... vms/test.com to eliminate spurious NL's in test output
[p5sagit/p5-mst-13.2.git] / ext / attrs / attrs.xs
index 7f7970d..4c00cd7 100644 (file)
@@ -1,3 +1,4 @@
+#define PERL_NO_GET_CONTEXT
 #include "EXTERN.h"
 #include "perl.h"
 #include "XSUB.h"
@@ -26,6 +27,10 @@ char *       Class
     PPCODE:
        if (!PL_compcv || !(cv = CvOUTSIDE(PL_compcv)))
            croak("can't set attributes outside a subroutine scope");
+       if (ckWARN(WARN_DEPRECATED))
+           Perl_warner(aTHX_ WARN_DEPRECATED,
+                       "pragma \"attrs\" is deprecated, "
+                       "use \"sub NAME : ATTRS\" instead");
        for (i = 1; i < items; i++) {
            STRLEN n_a;
            char *attr = SvPV(ST(i), n_a);
@@ -55,7 +60,7 @@ SV *  sub
        if (!sub)
            croak("invalid subroutine reference or name");
        if (CvFLAGS(sub) & CVf_METHOD)
-           XPUSHs(sv_2mortal(newSVpv("method", 0)));
+           XPUSHs(sv_2mortal(newSVpvn("method", 6)));
        if (CvFLAGS(sub) & CVf_LOCKED)
-           XPUSHs(sv_2mortal(newSVpv("locked", 0)));
+           XPUSHs(sv_2mortal(newSVpvn("locked", 6)));