This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Remove attrs, which has been deprecated since 1999/10/02.
authorNicholas Clark <nick@ccl4.org>
Sun, 12 Apr 2009 09:17:24 +0000 (10:17 +0100)
committerNicholas Clark <nick@ccl4.org>
Sun, 12 Apr 2009 09:17:24 +0000 (10:17 +0100)
27 files changed:
Cross/config.sh-arm-linux
Cross/config.sh-arm-linux-n770
MANIFEST
NetWare/Makefile
NetWare/config.wc
Porting/config.sh
README.symbian
epoc/config.sh
ext/attrs/Makefile.PL [deleted file]
ext/attrs/attrs.pm [deleted file]
ext/attrs/attrs.xs [deleted file]
ext/attrs/t/attrs.t [deleted file]
hints/uwin.sh
hints/vmesa.sh
plan9/config_sh.sample
pod/perldiag.pod
pod/roffitall
symbian/config.pl
symbian/install.cfg
win32/Makefile
win32/Makefile.ce
win32/config.bc
win32/config.ce
win32/config.gc
win32/config.vc
win32/config.vc64
win32/makefile.mk

index 9dce9a5..0c9262b 100644 (file)
@@ -546,7 +546,7 @@ doublesize='8'
 drand01='drand48()'
 drand48_r_proto='0'
 dtrace=''
-dynamic_ext='B ByteLoader Cwd Data/Dumper Devel/DProf Devel/PPPort Devel/Peek Digest/MD5 Encode Fcntl File/Glob Filter/Util/Call I18N/Langinfo IO IPC/SysV List/Util MIME/Base64 Opcode POSIX PerlIO/encoding PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Time/HiRes Unicode/Normalize XS/APItest XS/Typemap attrs re threads threads/shared'
+dynamic_ext='B ByteLoader Cwd Data/Dumper Devel/DProf Devel/PPPort Devel/Peek Digest/MD5 Encode Fcntl File/Glob Filter/Util/Call I18N/Langinfo IO IPC/SysV List/Util MIME/Base64 Opcode POSIX PerlIO/encoding PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Time/HiRes Unicode/Normalize XS/APItest XS/Typemap re threads threads/shared'
 eagain='EAGAIN'
 ebcdic='undef'
 echo='echo'
@@ -561,7 +561,7 @@ endservent_r_proto='0'
 eunicefix=':'
 exe_ext=''
 expr='expr'
-extensions='B ByteLoader Cwd Data/Dumper Devel/DProf Devel/PPPort Devel/Peek Digest/MD5 Encode Fcntl File/Glob Filter/Util/Call I18N/Langinfo IO IPC/SysV List/Util MIME/Base64 Opcode POSIX PerlIO/encoding PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Time/HiRes Unicode/Normalize XS/APItest XS/Typemap attrs re threads threads/shared Errno'
+extensions='B ByteLoader Cwd Data/Dumper Devel/DProf Devel/PPPort Devel/Peek Digest/MD5 Encode Fcntl File/Glob Filter/Util/Call I18N/Langinfo IO IPC/SysV List/Util MIME/Base64 Opcode POSIX PerlIO/encoding PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Time/HiRes Unicode/Normalize XS/APItest XS/Typemap re threads threads/shared Errno'
 extras=''
 fflushNULL='define'
 fflushall='undef'
@@ -751,7 +751,7 @@ issymlink='/usr/bin/test -h'
 ivdformat='"ld"'
 ivsize='4'
 ivtype='long'
-known_extensions='B ByteLoader Cwd DB_File Data/Dumper Devel/DProf Devel/PPPort Devel/Peek Digest/MD5 Encode Fcntl File/Glob Filter/Util/Call GDBM_File I18N/Langinfo IO IPC/SysV List/Util MIME/Base64 NDBM_File ODBM_File Opcode POSIX PerlIO/encoding PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Time/HiRes Unicode/Normalize XS/APItest XS/Typemap attrs re threads threads/shared'
+known_extensions='B ByteLoader Cwd DB_File Data/Dumper Devel/DProf Devel/PPPort Devel/Peek Digest/MD5 Encode Fcntl File/Glob Filter/Util/Call GDBM_File I18N/Langinfo IO IPC/SysV List/Util MIME/Base64 NDBM_File ODBM_File Opcode POSIX PerlIO/encoding PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Time/HiRes Unicode/Normalize XS/APItest XS/Typemap re threads threads/shared'
 ksh=''
 ld='cc'
 lddlflags='-shared -L/usr/local/lib'
index a07fcbb..4461b93 100644 (file)
@@ -531,7 +531,7 @@ dlsrc='dl_dlopen.xs'
 doublesize='8'
 drand01='drand48()'
 drand48_r_proto='0'
-dynamic_ext='B ByteLoader Cwd Data/Dumper Devel/DProf Devel/PPPort Devel/Peek Digest/MD5 Encode Fcntl File/Glob Filter/Util/Call I18N/Langinfo IO IPC/SysV List/Util MIME/Base64 Opcode POSIX PerlIO/encoding PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Time/HiRes Unicode/Normalize XS/APItest XS/Typemap attrs re threads threads/shared'
+dynamic_ext='B ByteLoader Cwd Data/Dumper Devel/DProf Devel/PPPort Devel/Peek Digest/MD5 Encode Fcntl File/Glob Filter/Util/Call I18N/Langinfo IO IPC/SysV List/Util MIME/Base64 Opcode POSIX PerlIO/encoding PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Time/HiRes Unicode/Normalize XS/APItest XS/Typemap re threads threads/shared'
 eagain='EAGAIN'
 ebcdic='undef'
 echo='echo'
@@ -546,7 +546,7 @@ endservent_r_proto='0'
 eunicefix=':'
 exe_ext=''
 expr='expr'
-extensions='B ByteLoader Cwd Data/Dumper Devel/DProf Devel/PPPort Devel/Peek Digest/MD5 Encode Fcntl File/Glob Filter/Util/Call I18N/Langinfo IO IPC/SysV List/Util MIME/Base64 Opcode POSIX PerlIO/encoding PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Time/HiRes Unicode/Normalize XS/APItest XS/Typemap attrs re threads threads/shared Errno'
+extensions='B ByteLoader Cwd Data/Dumper Devel/DProf Devel/PPPort Devel/Peek Digest/MD5 Encode Fcntl File/Glob Filter/Util/Call I18N/Langinfo IO IPC/SysV List/Util MIME/Base64 Opcode POSIX PerlIO/encoding PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Time/HiRes Unicode/Normalize XS/APItest XS/Typemap re threads threads/shared Errno'
 extras=''
 fflushNULL='define'
 fflushall='undef'
@@ -736,7 +736,7 @@ issymlink='/usr/bin/test -h'
 ivdformat='"ld"'
 ivsize='4'
 ivtype='long'
-known_extensions='B ByteLoader Cwd DB_File Data/Dumper Devel/DProf Devel/PPPort Devel/Peek Digest/MD5 Encode Fcntl File/Glob Filter/Util/Call GDBM_File I18N/Langinfo IO IPC/SysV List/Util MIME/Base64 NDBM_File ODBM_File Opcode POSIX PerlIO/encoding PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Time/HiRes Unicode/Normalize XS/APItest XS/Typemap attrs re threads threads/shared'
+known_extensions='B ByteLoader Cwd DB_File Data/Dumper Devel/DProf Devel/PPPort Devel/Peek Digest/MD5 Encode Fcntl File/Glob Filter/Util/Call GDBM_File I18N/Langinfo IO IPC/SysV List/Util MIME/Base64 NDBM_File ODBM_File Opcode POSIX PerlIO/encoding PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Time/HiRes Unicode/Normalize XS/APItest XS/Typemap re threads threads/shared'
 ksh=''
 ld='arm-none-linux-gnueabi-gcc'
 lddlflags='-shared -L/usr/local/lib'
index 23f47ed..861ec5b 100644 (file)
--- a/MANIFEST
+++ b/MANIFEST
@@ -88,10 +88,6 @@ ext/Attribute-Handlers/t/constants.t Test constants and Attribute::Handlers
 ext/Attribute-Handlers/t/data_convert.t        Test attribute data conversion
 ext/Attribute-Handlers/t/linerep.t     See if Attribute::Handlers works
 ext/Attribute-Handlers/t/multi.t       See if Attribute::Handlers works
-ext/attrs/attrs.pm             attrs extension Perl module
-ext/attrs/attrs.xs             attrs extension external subroutines
-ext/attrs/Makefile.PL          attrs extension makefile writer
-ext/attrs/t/attrs.t            See if attrs works with C<sub : attrs>
 ext/B/B/Concise.pm     Compiler Concise backend
 ext/B/B/Debug.pm       Compiler Debug backend
 ext/B/B/Deparse.pm     Compiler Deparse backend
index 13c56fb..6a5b2ac 100644 (file)
@@ -312,7 +312,6 @@ IO_NLM              = $(AUTODIR)\IO\IO.NLM
 OPCODE_NLM     = $(AUTODIR)\Opcode\Opcode.NLM
 SDBM_FILE_NLM = $(AUTODIR)\SDBM_File\SDBM_File.NLM
 POSIX_NLM      = $(AUTODIR)\POSIX\POSIX.NLM
-ATTRS_NLM      = $(AUTODIR)\attrs\attrs.NLM
 B_NLM          = $(AUTODIR)\B\B.NLM
 DUMPER_NLM     = $(AUTODIR)\Data\Dumper\Dumper.NLM
 PEEK_NLM       = $(AUTODIR)\Devel\Peek\Peek.NLM
@@ -336,7 +335,6 @@ EXTENSION_NLM       =               \
                $(SOCKET_NLM)   \
                $(OPCODE_NLM)   \
                $(B_NLM)                \
-               $(ATTRS_NLM)    \
                $(SDBM_FILE_NLM)        \
                $(POSIX_NLM)    \
                $(DUMPER_NLM)   \
@@ -788,7 +786,7 @@ CORE_H              = $(CORE_NOCFG_H) .\config.h
 DLL_OBJ                = $(DLL_SRC:.c=.obj)
 X2P_OBJ                = $(X2P_SRC:.c=.obj)
 
-DYNAMIC_EXT    = Socket IO Fcntl Opcode SDBM_File POSIX attrs B re \
+DYNAMIC_EXT    = Socket IO Fcntl Opcode SDBM_File POSIX B re \
                Data/Dumper Devel/Peek ByteLoader Devel/DProf File/Glob \
                Storable/Storable List/Util MIME/Base64/Base64 XS/APItest/APItest \
                XS/Typemap/Typemap Unicode/Normalize/Normalize Sys/Hostname
@@ -803,7 +801,6 @@ OPCODE              = $(EXTDIR)\Opcode\Opcode
 SDBM_FILE      = $(EXTDIR)\SDBM_File\SDBM_File
 IO                     = $(EXTDIR)\IO\IO
 POSIX          = $(EXTDIR)\POSIX\POSIX
-ATTRS          = $(EXTDIR)\attrs\attrs
 B                      = $(EXTDIR)\B\B
 RE                     = $(EXTDIR)\re\re
 DUMPER         = $(EXTDIR)\Data\Dumper\Dumper
@@ -830,7 +827,6 @@ EXTENSION_C =               \
                $(SDBM_FILE).c  \
                $(IO).c         \
                $(POSIX).c      \
-               $(ATTRS).c      \
                $(RE).c         \
                $(DUMPER).c     \
                $(PEEK).c       \
@@ -1226,12 +1222,6 @@ $(POSIX_NLM):
        $(MAKE)
        cd ..\..\netware
 
-$(ATTRS_NLM):
-       cd $(EXTDIR)\$(*B)
-       ..\..\miniperl -I..\..\lib Makefile.PL PERL_CORE=1 INSTALLDIRS=perl
-       $(MAKE)
-       cd ..\..\netware
-
 $(SDBM_FILE_NLM):
        cd $(EXTDIR)\$(*B)
        ..\..\miniperl -I..\..\lib Makefile.PL PERL_CORE=1 INSTALLDIRS=perl
@@ -1397,7 +1387,7 @@ distclean: clean nwclean
        -del /f /q $(EXTDIR)\DynaLoader\dl_win32.xs
        -del /f /q $(EXTDIR)\DynaLoader\DynaLoader.pm
        -del /f /q $(EXTDIR)\DynaLoader\XSLoader.pm
-       -del /f /q $(LIBDIR)\.exists $(LIBDIR)\attrs.pm $(LIBDIR)\DynaLoader.pm
+       -del /f /q $(LIBDIR)\.exists $(LIBDIR)\DynaLoader.pm
        -del /f /q $(LIBDIR)\XSLoader.pm
        -del /f /q $(LIBDIR)\Fcntl.pm $(LIBDIR)\IO.pm $(LIBDIR)\Opcode.pm
        -del /f /q $(LIBDIR)\ops.pm $(LIBDIR)\Safe.pm
index f192b12..93fbb15 100644 (file)
@@ -538,7 +538,7 @@ doublesize='8'
 drand01='(rand()/(double)((unsigned)1<<RANDBITS))'
 drand48_r_proto='0'
 dtrace=''
-dynamic_ext='Socket IO Fcntl Opcode SDBM_File attrs'
+dynamic_ext='Socket IO Fcntl Opcode SDBM_File'
 eagain='EAGAIN'
 ebcdic='undef'
 echo='echo'
index 0069482..8db9703 100644 (file)
@@ -560,7 +560,7 @@ doublesize='8'
 drand01='drand48()'
 drand48_r_proto='0'
 dtrace=''
-dynamic_ext='attrs B Compress/Raw/Zlib Cwd Data/Dumper DB_File Devel/DProf Devel/Peek Devel/PPPort Digest/MD5 Digest/SHA Encode Fcntl File/Glob Filter/Util/Call GDBM_File Hash/Util I18N/Langinfo IO IPC/SysV List/Util Math/BigInt/FastCalc MIME/Base64 NDBM_File ODBM_File Opcode PerlIO/encoding PerlIO/scalar PerlIO/via POSIX re SDBM_File Socket Storable Sys/Hostname Sys/Syslog Text/Soundex threads Time/HiRes Time/Piece Unicode/Normalize XS/APItest XS/Typemap threads/shared Hash/Util/FieldHash'
+dynamic_ext='B Compress/Raw/Zlib Cwd Data/Dumper DB_File Devel/DProf Devel/Peek Devel/PPPort Digest/MD5 Digest/SHA Encode Fcntl File/Glob Filter/Util/Call GDBM_File Hash/Util I18N/Langinfo IO IPC/SysV List/Util Math/BigInt/FastCalc MIME/Base64 NDBM_File ODBM_File Opcode PerlIO/encoding PerlIO/scalar PerlIO/via POSIX re SDBM_File Socket Storable Sys/Hostname Sys/Syslog Text/Soundex threads Time/HiRes Time/Piece Unicode/Normalize XS/APItest XS/Typemap threads/shared Hash/Util/FieldHash'
 eagain='EAGAIN'
 ebcdic='undef'
 echo='echo'
@@ -575,7 +575,7 @@ endservent_r_proto='0'
 eunicefix=':'
 exe_ext=''
 expr='expr'
-extensions='attrs B Compress/Raw/Zlib Cwd Data/Dumper DB_File Devel/DProf Devel/Peek Devel/PPPort Digest/MD5 Digest/SHA Encode Fcntl File/Glob Filter/Util/Call GDBM_File Hash/Util I18N/Langinfo IO IPC/SysV List/Util Math/BigInt/FastCalc MIME/Base64 NDBM_File ODBM_File Opcode PerlIO/encoding PerlIO/scalar PerlIO/via POSIX re SDBM_File Socket Storable Sys/Hostname Sys/Syslog Text/Soundex threads Time/HiRes Time/Piece Unicode/Normalize XS/APItest XS/Typemap threads/shared Hash/Util/FieldHash Compress/Zlib Errno IO_Compress_Base IO_Compress_Zlib Module/Pluggable Test/Harness'
+extensions='B Compress/Raw/Zlib Cwd Data/Dumper DB_File Devel/DProf Devel/Peek Devel/PPPort Digest/MD5 Digest/SHA Encode Fcntl File/Glob Filter/Util/Call GDBM_File Hash/Util I18N/Langinfo IO IPC/SysV List/Util Math/BigInt/FastCalc MIME/Base64 NDBM_File ODBM_File Opcode PerlIO/encoding PerlIO/scalar PerlIO/via POSIX re SDBM_File Socket Storable Sys/Hostname Sys/Syslog Text/Soundex threads Time/HiRes Time/Piece Unicode/Normalize XS/APItest XS/Typemap threads/shared Hash/Util/FieldHash Compress/Zlib Errno IO_Compress_Base IO_Compress_Zlib Module/Pluggable Test/Harness'
 extern_C='extern'
 extras=''
 fflushNULL='define'
@@ -767,7 +767,7 @@ issymlink='test -h'
 ivdformat='"Ld"'
 ivsize='8'
 ivtype='long long'
-known_extensions='attrs B Compress/Raw/Zlib Cwd Data/Dumper DB_File Devel/DProf Devel/Peek Devel/PPPort Digest/MD5 Digest/SHA Encode Fcntl File/Glob Filter/Util/Call GDBM_File Hash/Util I18N/Langinfo IO IPC/SysV List/Util Math/BigInt/FastCalc MIME/Base64 NDBM_File ODBM_File Opcode PerlIO/encoding PerlIO/scalar PerlIO/via POSIX re SDBM_File Socket Storable Sys/Hostname Sys/Syslog Text/Soundex threads Time/HiRes Time/Piece Unicode/Normalize Win32 Win32API/File Win32CORE XS/APItest XS/Typemap threads/shared Hash/Util/FieldHash'
+known_extensions='B Compress/Raw/Zlib Cwd Data/Dumper DB_File Devel/DProf Devel/Peek Devel/PPPort Digest/MD5 Digest/SHA Encode Fcntl File/Glob Filter/Util/Call GDBM_File Hash/Util I18N/Langinfo IO IPC/SysV List/Util Math/BigInt/FastCalc MIME/Base64 NDBM_File ODBM_File Opcode PerlIO/encoding PerlIO/scalar PerlIO/via POSIX re SDBM_File Socket Storable Sys/Hostname Sys/Syslog Text/Soundex threads Time/HiRes Time/Piece Unicode/Normalize Win32 Win32API/File Win32CORE XS/APItest XS/Typemap threads/shared Hash/Util/FieldHash'
 ksh=''
 ld='cc'
 lddlflags='-shared -O2 -L/usr/local/lib -fstack-protector'
index 6bd36f5..22b6385 100644 (file)
@@ -360,7 +360,7 @@ The Symbian port is licensed under the same terms as Perl itself.
     DynaLoader Exporter File::Spec integer lib strict Symbol
     vars warnings XSLoader
   - The following extensions are available:
-    attrs Compress::Zlib Cwd Data::Dumper Devel::Peek Digest::MD5 DynaLoader
+    Compress::Zlib Cwd Data::Dumper Devel::Peek Digest::MD5 DynaLoader
     Fcntl File::Glob Filter::Util::Call IO List::Util MIME::Base64
     PerlIO::scalar PerlIO::via SDBM_File Socket Storable Time::HiRes
   - The following extensions are missing for various technical reasons:
index 1d7d533..dc884a2 100644 (file)
@@ -529,7 +529,7 @@ endservent_r_proto='0'
 eunicefix=':'
 exe_ext=''
 expr='expr'
-extensions='Data/Dumper Digest/MD5 Errno Fcntl File/Glob Filter/Util/Call IO List/Util MIME/Base64 Opcode PerlIO/scalar Socket Storable Sys/Hostname Unicode/Storable attrs re'
+extensions='Data/Dumper Digest/MD5 Errno Fcntl File/Glob Filter/Util/Call IO List/Util MIME/Base64 Opcode PerlIO/scalar Socket Storable Sys/Hostname Unicode/Storable re'
 fflushNULL='undef'
 fflushall='define'
 find=''
diff --git a/ext/attrs/Makefile.PL b/ext/attrs/Makefile.PL
deleted file mode 100644 (file)
index fdff629..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-use ExtUtils::MakeMaker;
-WriteMakefile(
-    NAME       => 'attrs',
-    VERSION_FROM => 'attrs.pm',
-    XSPROTOARG => '-noprototypes'
-);
diff --git a/ext/attrs/attrs.pm b/ext/attrs/attrs.pm
deleted file mode 100644 (file)
index c483cd3..0000000
+++ /dev/null
@@ -1,58 +0,0 @@
-package attrs;
-use XSLoader ();
-
-$VERSION = "1.02";
-
-=head1 NAME
-
-attrs - set/get attributes of a subroutine (deprecated)
-
-=head1 SYNOPSIS
-
-    sub foo {
-        use attrs qw(locked method);
-        ...
-    }
-
-    @a = attrs::get(\&foo);
-
-=head1 DESCRIPTION
-
-NOTE: Use of this pragma is deprecated.  Use the syntax
-
-    sub foo : locked method { }
-
-to declare attributes instead.  See also L<attributes>.
-
-This pragma lets you set and get attributes for subroutines.
-Setting attributes takes place at compile time; trying to set
-invalid attribute names causes a compile-time error. Calling
-C<attrs::get> on a subroutine reference or name returns its list
-of attribute names. Notice that C<attrs::get> is not exported.
-Valid attributes are as follows.
-
-=over 4
-
-=item method
-
-Indicates that the invoking subroutine is a method.
-
-=item locked
-
-Setting this attribute is only meaningful when the subroutine or
-method is to be called by multiple threads. When set on a method
-subroutine (i.e. one marked with the B<method> attribute above),
-perl ensures that any invocation of it implicitly locks its first
-argument before execution. When set on a non-method subroutine,
-perl ensures that a lock is taken on the subroutine itself before
-execution. The semantics of the lock are exactly those of one
-explicitly taken with the C<lock> operator immediately after the
-subroutine is entered.
-
-=back
-
-=cut
-
-XSLoader::load 'attrs', $VERSION;
-
-1;
diff --git a/ext/attrs/attrs.xs b/ext/attrs/attrs.xs
deleted file mode 100644 (file)
index c7fce19..0000000
+++ /dev/null
@@ -1,65 +0,0 @@
-#define PERL_NO_GET_CONTEXT
-#include "EXTERN.h"
-#include "perl.h"
-#include "XSUB.h"
-
-static cv_flags_t
-get_flag(const char *attr)
-{
-    if (strnEQ(attr, "method", 6))
-       return CVf_METHOD;
-    else if (strnEQ(attr, "locked", 6))
-       return CVf_LOCKED;
-    else
-       return 0;
-}
-
-MODULE = attrs         PACKAGE = attrs
-
-void
-import(...)
-    ALIAS:
-       unimport = 1
-    PREINIT:
-       int i;
-    PPCODE:
-       if (items < 1)
-           Perl_croak(aTHX_ "Usage: %s(Class, ...)", GvNAME(CvGV(cv)));
-       if (!PL_compcv || !(cv = CvOUTSIDE(PL_compcv)))
-           croak("can't set attributes outside a subroutine scope");
-       if (ckWARN(WARN_DEPRECATED))
-           Perl_warner(aTHX_ packWARN(WARN_DEPRECATED),
-                       "pragma \"attrs\" is deprecated, "
-                       "use \"sub NAME : ATTRS\" instead");
-       for (i = 1; i < items; i++) {
-           const char * const attr = SvPV_nolen(ST(i));
-           const cv_flags_t flag = get_flag(attr);
-           if (!flag)
-               croak("invalid attribute name %s", attr);
-           if (ix)
-               CvFLAGS(cv) &= ~flag;
-           else
-               CvFLAGS(cv) |= flag;
-       }
-
-void
-get(sub)
-SV *   sub
-    PPCODE:
-       if (SvROK(sub)) {
-           sub = SvRV(sub);
-           if (SvTYPE(sub) != SVt_PVCV)
-               sub = Nullsv;
-       }
-       else {
-           STRLEN len;
-           const char * const name = SvPV(sub, len);
-           sub = (SV*)get_cvn_flags(name, len, SvUTF8(sub));
-       }
-       if (!sub)
-           croak("invalid subroutine reference or name");
-       if (CvFLAGS(sub) & CVf_METHOD)
-           XPUSHs(sv_2mortal(newSVpvn("method", 6)));
-       if (CvFLAGS(sub) & CVf_LOCKED)
-           XPUSHs(sv_2mortal(newSVpvn("locked", 6)));
-
diff --git a/ext/attrs/t/attrs.t b/ext/attrs/t/attrs.t
deleted file mode 100644 (file)
index 18a02ab..0000000
+++ /dev/null
@@ -1,141 +0,0 @@
-#!./perl
-
-# Regression tests for attrs.pm and the C<sub x : attrs> syntax.
-
-BEGIN {
-    chdir 't' if -d 't';
-    @INC = '../lib';
-    eval 'require attrs; 1' or do {
-       print "1..0\n";
-       exit 0;
-    }
-}
-
-use warnings;
-no warnings qw(deprecated);     # else attrs cries.
-
-sub NTESTS () ;
-
-my ($test, $ntests);
-BEGIN {$ntests=0}
-$test=0;
-my $failed = 0;
-
-print "1..".NTESTS."\n";
-
-eval 'sub t1 ($) { use attrs "locked"; $_[0]++ }';
-(print "not "), $failed=1 if $@;
-print "ok ",++$test,"\n";
-BEGIN {++$ntests}
-
-eval 'sub t2 { use attrs "locked"; $_[0]++ }';
-(print "not "), $failed=1 if $@;
-print "ok ",++$test,"\n";
-BEGIN {++$ntests}
-
-eval 'sub t3 ($) : locked ;';
-(print "not "), $failed=1 if $@;
-print "ok ",++$test,"\n";
-BEGIN {++$ntests}
-
-eval 'sub t4 : locked ;';
-(print "not "), $failed=1 if $@;
-print "ok ",++$test,"\n";
-BEGIN {++$ntests}
-
-my $anon1;
-eval '$anon1 = sub ($) { use attrs qw(locked method); $_[0]++ }';
-(print "not "), $failed=1 if $@;
-print "ok ",++$test,"\n";
-BEGIN {++$ntests}
-
-my $anon2;
-eval '$anon2 = sub { use attrs qw(locked method); $_[0]++ }';
-(print "not "), $failed=1 if $@;
-print "ok ",++$test,"\n";
-BEGIN {++$ntests}
-
-my $anon3;
-eval '$anon3 = sub { use attrs "method"; $_[0]->[1] }';
-(print "not "), $failed=1 if $@;
-print "ok ",++$test,"\n";
-BEGIN {++$ntests}
-
-my @attrs = attrs::get($anon3 ? $anon3 : \&ns);
-(print "not "), $failed=1 unless "@attrs" eq "method";
-print "ok ",++$test,"\n";
-BEGIN {++$ntests}
-
-@attrs = sort +attrs::get($anon2 ? $anon2 : \&ns);
-(print "not "), $failed=1 unless "@attrs" eq "locked method";
-print "ok ",++$test,"\n";
-BEGIN {++$ntests}
-
-@attrs = sort +attrs::get($anon1 ? $anon1 : \&ns);
-(print "not "), $failed=1 unless "@attrs" eq "locked method";
-print "ok ",++$test,"\n";
-BEGIN {++$ntests}
-
-eval 'sub e1 ($) : plugh ;';
-unless ($@ && $@ =~ m/^Invalid CODE attribute: ["']?plugh["']? at/) {
-    my $x = $@;
-    $x =~ s/\n.*\z//s;
-    print "# $x\n";
-    print "not ";
-    $failed = 1;
-}
-print "ok ",++$test,"\n";
-BEGIN {++$ntests}
-
-eval 'sub e2 ($) : plugh(0,0) xyzzy ;';
-unless ($@ && $@ =~ m/^Invalid CODE attributes: ["']?plugh\(0,0\)["']? /) {
-    my $x = $@;
-    $x =~ s/\n.*\z//s;
-    print "# $x\n";
-    print "not ";
-    $failed = 1;
-}
-print "ok ",++$test,"\n";
-BEGIN {++$ntests}
-
-eval 'sub e3 ($) : plugh(0,0 xyzzy ;';
-unless ($@ && $@ =~ m/Unterminated attribute parameter in attribute list at/) {
-    my $x = $@;
-    $x =~ s/\n.*\z//s;
-    print "# $x\n";
-    print "not ";
-    $failed = 1;
-}
-print "ok ",++$test,"\n";
-BEGIN {++$ntests}
-
-eval 'sub e4 ($) : plugh + xyzzy ;';
-unless ($@ && $@ =~ m/Invalid separator character '[+]' in attribute list at/) {
-    my $x = $@;
-    $x =~ s/\n.*\z//s;
-    print "# $x\n";
-    print "not ";
-    $failed = 1;
-}
-print "ok ",++$test,"\n";
-BEGIN {++$ntests}
-
-{
-    my $w = "" ;
-    local $SIG{__WARN__} = sub {$w = shift} ;
-    eval 'sub w1 ($) { use warnings "deprecated"; use attrs "locked"; $_[0]++ }';
-    (print "not "), $failed=1 if $@;
-    print "ok ",++$test,"\n";
-    BEGIN {++$ntests}
-    (print "not "), $failed=1 
-       if $w !~ /^pragma "attrs" is deprecated, use "sub NAME : ATTRS" instead at/;
-    print "ok ",++$test,"\n";
-    BEGIN {++$ntests}
-}
-
-
-# Other tests should be added above this line
-
-sub NTESTS () { $ntests }
-
-exit $failed;
index a0d3556..64357c2 100644 (file)
@@ -32,7 +32,7 @@
 #b # compile/link flags
 #b ldflags=-g
 #b optimize=-g
-#b static_ext="B Data/Dumper Digest/MD5 Errno Fcntl Filter::Util::Call IO IPC/SysV MIME::Base64 Opcode PerlIO::scalar POSIX SDBM_File Socket Storable Unicode::Normalize attrs re"
+#b static_ext="B Data/Dumper Digest/MD5 Errno Fcntl Filter::Util::Call IO IPC/SysV MIME::Base64 Opcode PerlIO::scalar POSIX SDBM_File Socket Storable Unicode::Normalize re"
 #b #static_ext=none
 #b # dynamic loading needs work
 #b usedl=undef
@@ -109,7 +109,7 @@ optimize=-g
 
 # Original, with :: separators, cause make to choke.
 # No longer seems to be necessary at all.
-# static_ext="B Data/Dumper Digest/MD5 Errno Fcntl Filter/Util/Call IO IPC/SysV MIME/Base64 Opcode PerlIO/scalar POSIX SDBM_File Socket Storable Unicode/Normalize attrs re"
+# static_ext="B Data/Dumper Digest/MD5 Errno Fcntl Filter/Util/Call IO IPC/SysV MIME/Base64 Opcode PerlIO/scalar POSIX SDBM_File Socket Storable Unicode/Normalize re"
 
 # perl malloc will not work
 usemymalloc=n
index faebd45..27ab123 100644 (file)
@@ -322,7 +322,7 @@ sig_num_init='0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,2
 sizetype='size_t'
 so='.a'
 ssizetype='ssize_t'
-static_ext='Data/Dumper Digest/MD5 Fcntl Filter/Util/Call GDBM_File IO IPC/SysV List/Util MIME/Base64 NDBM_File Opcode PerlIO/scalar POSIX Socket Storable Time/HiRes Time/Piece attrs re'
+static_ext='Data/Dumper Digest/MD5 Fcntl Filter/Util/Call GDBM_File IO IPC/SysV List/Util MIME/Base64 NDBM_File Opcode PerlIO/scalar POSIX Socket Storable Time/HiRes Time/Piece re'
 stdchar='char'
 stdio_cnt='(fp)->__countIn'
 stdio_ptr='(fp)->__bufPtr'
index 64ba395..2228c61 100644 (file)
@@ -560,7 +560,7 @@ endservent_r_proto='0'
 eunicefix=':'
 exe_ext=''
 expr='expr'
-extensions='B ByteLoader Cwd Data/Dumper Devel/DProf Devel/PPPort Devel/Peek Digest/MD5 Encode Fcntl File/Glob Filter/Util/Call IO List/Util MIME/Base64 Opcode POSIX PerlIO/encoding PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Time/HiRes Unicode/Normalize attrs re threads threads/shared Encode/Byte Encode/CN Encode/EBCDIC Encode/JP Encode/KR Encode/Symbol Encode/TW Encode/Unicode Errno'
+extensions='B ByteLoader Cwd Data/Dumper Devel/DProf Devel/PPPort Devel/Peek Digest/MD5 Encode Fcntl File/Glob Filter/Util/Call IO List/Util MIME/Base64 Opcode POSIX PerlIO/encoding PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Time/HiRes Unicode/Normalize re threads threads/shared Encode/Byte Encode/CN Encode/EBCDIC Encode/JP Encode/KR Encode/Symbol Encode/TW Encode/Unicode Errno'
 extras=''
 fflushNULL='define'
 fflushall='undef'
@@ -733,7 +733,7 @@ issymlink='/bin/test -h'
 ivdformat='"ld"'
 ivsize='4'
 ivtype='long'
-known_extensions='B ByteLoader Cwd DB_File Data/Dumper Devel/DProf Devel/PPPort Devel/Peek Digest/MD5 Encode Fcntl File/Glob Filter/Util/Call GDBM_File I18N/Langinfo IO IPC/SysV List/Util MIME/Base64 NDBM_File ODBM_File Opcode POSIX PerlIO/encoding PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Time/HiRes Unicode/Normalize XS/APItest XS/Typemap attrs re threads threads/shared'
+known_extensions='B ByteLoader Cwd DB_File Data/Dumper Devel/DProf Devel/PPPort Devel/Peek Digest/MD5 Encode Fcntl File/Glob Filter/Util/Call GDBM_File I18N/Langinfo IO IPC/SysV List/Util MIME/Base64 NDBM_File ODBM_File Opcode POSIX PerlIO/encoding PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Time/HiRes Unicode/Normalize XS/APItest XS/Typemap re threads threads/shared'
 ksh=''
 ld='ld'
 lddlflags=''
@@ -933,7 +933,7 @@ src='.'
 ssizetype='ssize_t'
 startperl='#!/bin/perl'
 startsh='#!/bin/sh'
-static_ext='B ByteLoader Cwd Data/Dumper Devel/DProf Devel/PPPort Devel/Peek Digest/MD5 Encode Fcntl File/Glob Filter/Util/Call IO List/Util MIME/Base64 Opcode POSIX PerlIO/encoding PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Time/HiRes Unicode/Normalize attrs re threads threads/shared Encode/Byte Encode/CN Encode/EBCDIC Encode/JP Encode/KR Encode/Symbol Encode/TW Encode/Unicode'
+static_ext='B ByteLoader Cwd Data/Dumper Devel/DProf Devel/PPPort Devel/Peek Digest/MD5 Encode Fcntl File/Glob Filter/Util/Call IO List/Util MIME/Base64 Opcode POSIX PerlIO/encoding PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Time/HiRes Unicode/Normalize re threads threads/shared Encode/Byte Encode/CN Encode/EBCDIC Encode/JP Encode/KR Encode/Symbol Encode/TW Encode/Unicode'
 stdchar='char'
 stdio_base='((fp)->_base)'
 stdio_bufsiz='((fp)->_cnt + (fp)->_ptr - (fp)->_base)'
index d958262..6170560 100644 (file)
@@ -3404,24 +3404,6 @@ If instead you intended to match the word 'foo' at the end of the line
 followed by whitespace and the word 'bar' on the next line then you can use
 C<m/$(?)\/> (for example: C<m/foo$(?)\s+bar/>).
 
-=item pragma "attrs" is deprecated, use "sub NAME : ATTRS" instead
-
-(D deprecated) You have written something like this:
-
-    sub doit
-    {
-        use attrs qw(locked);
-    }
-
-You should use the new declaration syntax instead.
-
-    sub doit : locked
-    {
-        ...
-
-The C<use attrs> pragma is now obsolete, and is only provided for
-backward-compatibility. See L<perlsub/"Subroutine Attributes">.
-
 =item Precedence problem: open %s should be open(%s)
 
 (S precedence) The old irregular construct
index 8f897da..c533e28 100644 (file)
@@ -118,7 +118,6 @@ toroff=`
     $mandir/splain.1   \
     $mandir/xsubpp.1   \
                        \
-    $libdir/attrs.3    \
     $libdir/autouse.3  \
     $libdir/base.3     \
     $libdir/blib.3     \
index f35efb6..09c316f 100644 (file)
@@ -717,7 +717,7 @@ perl${VERSION}lib.sis perllib.sis:  \$(PM)
 perl${VERSION}ext.sis perlext.sis:     perldll_arm buildext_sis
        perl symbian\\makesis.pl perl${VERSION}ext
 
-EXT =  Compress::Raw::Zlib Cwd Data::Dumper Devel::Peek Digest::MD5 Errno Fcntl File::Glob Filter::Util::Call IO List::Util MIME::Base64 PerlIO::scalar PerlIO::via SDBM_File Socket Storable Time::HiRes XSLoader attrs
+EXT =  Compress::Raw::Zlib Cwd Data::Dumper Devel::Peek Digest::MD5 Errno Fcntl File::Glob Filter::Util::Call IO List::Util MIME::Base64 PerlIO::scalar PerlIO::via SDBM_File Socket Storable Time::HiRes XSLoader
 
 buildext: perldll symbian\\xsbuild.pl lib\\Config.pm
        perl \$(XLIB) symbian\\xsbuild.pl \$(XSBOPT) \$(EXT)
index b235ecf..cdfe80a 100644 (file)
@@ -69,7 +69,6 @@ lib   warnings/register.pm
 # 
 # Extensions.
 #
-ext    attrs
 ext    Compress/Raw/Zlib       -zlib-src
 ext    Cwd
 ext    Data/Dumper
index 0812437..a724482 100644 (file)
@@ -1154,7 +1154,7 @@ distclean: realclean
        -del /f $(EXTDIR)\DynaLoader\XSLoader.pm
        -del /f $(LIBDIR)\Encode.pm $(LIBDIR)\encoding.pm $(LIBDIR)\Errno.pm
        -del /f $(LIBDIR)\Config.pod $(LIBDIR)\POSIX.pod $(LIBDIR)\threads.pm
-       -del /f $(LIBDIR)\.exists $(LIBDIR)\attrs.pm $(LIBDIR)\DynaLoader.pm
+       -del /f $(LIBDIR)\.exists $(LIBDIR)\DynaLoader.pm
        -del /f $(LIBDIR)\XSLoader.pm $(LIBDIR)\lib.pm
        -del /f $(LIBDIR)\Fcntl.pm $(LIBDIR)\IO.pm $(LIBDIR)\Opcode.pm
        -del /f $(LIBDIR)\ops.pm $(LIBDIR)\Safe.pm
index 5ec7478..cb96f33 100644 (file)
@@ -654,7 +654,7 @@ CORE_NOCFG_H        =               \
                .\include\sys\socket.h  \
                .\win32.h
 
-DYNAMIC_EXT    = Socket IO Fcntl Opcode SDBM_File POSIX attrs B re \
+DYNAMIC_EXT    = Socket IO Fcntl Opcode SDBM_File POSIX B re \
                Data/Dumper Devel/Peek ByteLoader Devel/DProf File/Glob \
                Sys/Hostname
 
index ed25fbe..37cc9c6 100644 (file)
@@ -534,7 +534,7 @@ doublesize='8'
 drand01='(rand()/(double)((unsigned)1<<RANDBITS))'
 drand48_r_proto='0'
 dtrace=''
-dynamic_ext='Socket IO Fcntl Opcode SDBM_File attrs'
+dynamic_ext='Socket IO Fcntl Opcode SDBM_File'
 eagain='EAGAIN'
 ebcdic='undef'
 echo='echo'
index d7f7173..6cb5b37 100644 (file)
@@ -536,7 +536,7 @@ doublesize='8'
 drand01='(rand()/(double)((unsigned)1<<RANDBITS))'
 drand48_r_proto='0'
 dtrace=''
-dynamic_ext='Socket IO Fcntl Opcode SDBM_File attrs'
+dynamic_ext='Socket IO Fcntl Opcode SDBM_File'
 eagain='EAGAIN'
 ebcdic='undef'
 echo='echo'
index 8a838c8..64e9742 100644 (file)
@@ -534,7 +534,7 @@ doublesize='8'
 drand01='(rand()/(double)((unsigned)1<<RANDBITS))'
 drand48_r_proto='0'
 dtrace=''
-dynamic_ext='Socket IO Fcntl Opcode SDBM_File attrs'
+dynamic_ext='Socket IO Fcntl Opcode SDBM_File'
 eagain='EAGAIN'
 ebcdic='undef'
 echo='echo'
index 84dd148..c893c91 100644 (file)
@@ -534,7 +534,7 @@ doublesize='8'
 drand01='(rand()/(double)((unsigned)1<<RANDBITS))'
 drand48_r_proto='0'
 dtrace=''
-dynamic_ext='Socket IO Fcntl Opcode SDBM_File attrs'
+dynamic_ext='Socket IO Fcntl Opcode SDBM_File'
 eagain='EAGAIN'
 ebcdic='undef'
 echo='echo'
index 2a7119b..a8e409b 100644 (file)
@@ -534,7 +534,7 @@ doublesize='8'
 drand01='(rand()/(double)((unsigned)1<<RANDBITS))'
 drand48_r_proto='0'
 dtrace=''
-dynamic_ext='Socket IO Fcntl Opcode SDBM_File attrs'
+dynamic_ext='Socket IO Fcntl Opcode SDBM_File'
 eagain='EAGAIN'
 ebcdic='undef'
 echo='echo'
index 3b7b0b4..78c546e 100644 (file)
@@ -1476,7 +1476,7 @@ distclean: realclean
        -del /f $(EXTDIR)\DynaLoader\XSLoader.pm
        -del /f $(LIBDIR)\Encode.pm $(LIBDIR)\encoding.pm $(LIBDIR)\Errno.pm
        -del /f $(LIBDIR)\Config.pod $(LIBDIR)\POSIX.pod $(LIBDIR)\threads.pm
-       -del /f $(LIBDIR)\.exists $(LIBDIR)\attrs.pm $(LIBDIR)\DynaLoader.pm
+       -del /f $(LIBDIR)\.exists $(LIBDIR)\DynaLoader.pm
        -del /f $(LIBDIR)\XSLoader.pm $(LIBDIR)\lib.pm
        -del /f $(LIBDIR)\Fcntl.pm $(LIBDIR)\IO.pm $(LIBDIR)\Opcode.pm
        -del /f $(LIBDIR)\ops.pm $(LIBDIR)\Safe.pm