Subject: | [PATCH] ISA fixes for c3 |
Exporter needs to be the last ISA entry, otherwise
c3 linearization cannot be fulfilled.
Repro with cperl, where c3 is the new default already.
See also https://github.com/rurban/IO-Compress/tree/c3
--
Reini Urban
Subject: | 0001-ISA-fixes-for-c3.patch |
From 6e356f54d6b121d11381411bf1ec8a7729dcc930 Mon Sep 17 00:00:00 2001
From: Reini Urban <rurban@cpan.org>
Date: Tue, 14 Feb 2017 13:31:34 +0100
Subject: [PATCH] ISA fixes for c3
Exporter needs to be the last ISA entry, otherwise
c3 linearization cannot be fulfilled.
Repro with cperl, where c3 is the new default already.
---
lib/IO/Compress/Base.pm | 2 +-
lib/IO/Compress/Bzip2.pm | 2 +-
lib/IO/Compress/Deflate.pm | 2 +-
lib/IO/Compress/Gzip.pm | 2 +-
lib/IO/Compress/RawDeflate.pm | 2 +-
lib/IO/Compress/Zip.pm | 2 +-
lib/IO/Uncompress/AnyInflate.pm | 2 +-
lib/IO/Uncompress/AnyUncompress.pm | 2 +-
lib/IO/Uncompress/Base.pm | 2 +-
lib/IO/Uncompress/Bunzip2.pm | 2 +-
lib/IO/Uncompress/Gunzip.pm | 2 +-
lib/IO/Uncompress/Inflate.pm | 2 +-
lib/IO/Uncompress/RawInflate.pm | 2 +-
lib/IO/Uncompress/Unzip.pm | 4 ++--
14 files changed, 15 insertions(+), 15 deletions(-)
diff --git lib/IO/Compress/Base.pm lib/IO/Compress/Base.pm
index 8dd9fc1..b6bfa67 100644
--- lib/IO/Compress/Base.pm
+++ lib/IO/Compress/Base.pm
@@ -18,7 +18,7 @@ use Symbol();
#use bytes;
our (@ISA, $VERSION);
-@ISA = qw(Exporter IO::File);
+@ISA = qw(IO::File Exporter);
$VERSION = '2.072';
diff --git lib/IO/Compress/Bzip2.pm lib/IO/Compress/Bzip2.pm
index 800e0f1..9cecac0 100644
--- lib/IO/Compress/Bzip2.pm
+++ lib/IO/Compress/Bzip2.pm
@@ -17,7 +17,7 @@ our ($VERSION, @ISA, @EXPORT_OK, %EXPORT_TAGS, $Bzip2Error);
$VERSION = '2.072';
$Bzip2Error = '';
-@ISA = qw(Exporter IO::Compress::Base);
+@ISA = qw(IO::Compress::Base Exporter);
@EXPORT_OK = qw( $Bzip2Error bzip2 ) ;
%EXPORT_TAGS = %IO::Compress::Base::EXPORT_TAGS ;
push @{ $EXPORT_TAGS{all} }, @EXPORT_OK ;
diff --git lib/IO/Compress/Deflate.pm lib/IO/Compress/Deflate.pm
index c41aa7a..0f9e43e 100644
--- lib/IO/Compress/Deflate.pm
+++ lib/IO/Compress/Deflate.pm
@@ -20,7 +20,7 @@ our ($VERSION, @ISA, @EXPORT_OK, %EXPORT_TAGS, %DEFLATE_CONSTANTS, $DeflateError
$VERSION = '2.072';
$DeflateError = '';
-@ISA = qw(Exporter IO::Compress::RawDeflate);
+@ISA = qw(IO::Compress::RawDeflate Exporter);
@EXPORT_OK = qw( $DeflateError deflate ) ;
%EXPORT_TAGS = %IO::Compress::RawDeflate::DEFLATE_CONSTANTS ;
diff --git lib/IO/Compress/Gzip.pm lib/IO/Compress/Gzip.pm
index 5448235..d667375 100644
--- lib/IO/Compress/Gzip.pm
+++ lib/IO/Compress/Gzip.pm
@@ -28,7 +28,7 @@ our ($VERSION, @ISA, @EXPORT_OK, %EXPORT_TAGS, %DEFLATE_CONSTANTS, $GzipError);
$VERSION = '2.072';
$GzipError = '' ;
-@ISA = qw(Exporter IO::Compress::RawDeflate);
+@ISA = qw(IO::Compress::RawDeflate Exporter);
@EXPORT_OK = qw( $GzipError gzip ) ;
%EXPORT_TAGS = %IO::Compress::RawDeflate::DEFLATE_CONSTANTS ;
diff --git lib/IO/Compress/RawDeflate.pm lib/IO/Compress/RawDeflate.pm
index 124d8eb..c52f37b 100644
--- lib/IO/Compress/RawDeflate.pm
+++ lib/IO/Compress/RawDeflate.pm
@@ -17,7 +17,7 @@ our ($VERSION, @ISA, @EXPORT_OK, %DEFLATE_CONSTANTS, %EXPORT_TAGS, $RawDeflateEr
$VERSION = '2.072';
$RawDeflateError = '';
-@ISA = qw(Exporter IO::Compress::Base);
+@ISA = qw(IO::Compress::Base Exporter);
@EXPORT_OK = qw( $RawDeflateError rawdeflate ) ;
push @EXPORT_OK, @IO::Compress::Adapter::Deflate::EXPORT_OK ;
diff --git lib/IO/Compress/Zip.pm lib/IO/Compress/Zip.pm
index 13f2045..dd93e87 100644
--- lib/IO/Compress/Zip.pm
+++ lib/IO/Compress/Zip.pm
@@ -39,7 +39,7 @@ our ($VERSION, @ISA, @EXPORT_OK, %EXPORT_TAGS, %DEFLATE_CONSTANTS, $ZipError);
$VERSION = '2.072';
$ZipError = '';
-@ISA = qw(Exporter IO::Compress::RawDeflate);
+@ISA = qw(IO::Compress::RawDeflate Exporter);
@EXPORT_OK = qw( $ZipError zip ) ;
%EXPORT_TAGS = %IO::Compress::RawDeflate::DEFLATE_CONSTANTS ;
diff --git lib/IO/Uncompress/AnyInflate.pm lib/IO/Uncompress/AnyInflate.pm
index d397f22..7c9cc93 100644
--- lib/IO/Uncompress/AnyInflate.pm
+++ lib/IO/Uncompress/AnyInflate.pm
@@ -24,7 +24,7 @@ our ($VERSION, @ISA, @EXPORT_OK, %EXPORT_TAGS, $AnyInflateError);
$VERSION = '2.072';
$AnyInflateError = '';
-@ISA = qw( Exporter IO::Uncompress::Base );
+@ISA = qw(IO::Uncompress::Base Exporter);
@EXPORT_OK = qw( $AnyInflateError anyinflate ) ;
%EXPORT_TAGS = %IO::Uncompress::Base::DEFLATE_CONSTANTS ;
push @{ $EXPORT_TAGS{all} }, @EXPORT_OK ;
diff --git lib/IO/Uncompress/AnyUncompress.pm lib/IO/Uncompress/AnyUncompress.pm
index 06de17f..1de24ee 100644
--- lib/IO/Uncompress/AnyUncompress.pm
+++ lib/IO/Uncompress/AnyUncompress.pm
@@ -16,7 +16,7 @@ our ($VERSION, @ISA, @EXPORT_OK, %EXPORT_TAGS, $AnyUncompressError);
$VERSION = '2.072';
$AnyUncompressError = '';
-@ISA = qw( Exporter IO::Uncompress::Base );
+@ISA = qw(IO::Uncompress::Base Exporter);
@EXPORT_OK = qw( $AnyUncompressError anyuncompress ) ;
%EXPORT_TAGS = %IO::Uncompress::Base::DEFLATE_CONSTANTS ;
push @{ $EXPORT_TAGS{all} }, @EXPORT_OK ;
diff --git lib/IO/Uncompress/Base.pm lib/IO/Uncompress/Base.pm
index 8451a01..2761f1e 100644
--- lib/IO/Uncompress/Base.pm
+++ lib/IO/Uncompress/Base.pm
@@ -6,7 +6,7 @@ use warnings;
use bytes;
our (@ISA, $VERSION, @EXPORT_OK, %EXPORT_TAGS);
-@ISA = qw(Exporter IO::File);
+@ISA = qw(IO::File Exporter);
$VERSION = '2.072';
diff --git lib/IO/Uncompress/Bunzip2.pm lib/IO/Uncompress/Bunzip2.pm
index 5246691..382c200 100644
--- lib/IO/Uncompress/Bunzip2.pm
+++ lib/IO/Uncompress/Bunzip2.pm
@@ -15,7 +15,7 @@ our ($VERSION, @ISA, @EXPORT_OK, %EXPORT_TAGS, $Bunzip2Error);
$VERSION = '2.072';
$Bunzip2Error = '';
-@ISA = qw( Exporter IO::Uncompress::Base );
+@ISA = qw(IO::Uncompress::Base Exporter);
@EXPORT_OK = qw( $Bunzip2Error bunzip2 ) ;
#%EXPORT_TAGS = %IO::Uncompress::Base::EXPORT_TAGS ;
push @{ $EXPORT_TAGS{all} }, @EXPORT_OK ;
diff --git lib/IO/Uncompress/Gunzip.pm lib/IO/Uncompress/Gunzip.pm
index 79bc9a2..570c0b5 100644
--- lib/IO/Uncompress/Gunzip.pm
+++ lib/IO/Uncompress/Gunzip.pm
@@ -20,7 +20,7 @@ require Exporter ;
our ($VERSION, @ISA, @EXPORT_OK, %EXPORT_TAGS, $GunzipError);
-@ISA = qw( Exporter IO::Uncompress::RawInflate );
+@ISA = qw(IO::Uncompress::RawInflate Exporter);
@EXPORT_OK = qw( $GunzipError gunzip );
%EXPORT_TAGS = %IO::Uncompress::RawInflate::DEFLATE_CONSTANTS ;
push @{ $EXPORT_TAGS{all} }, @EXPORT_OK ;
diff --git lib/IO/Uncompress/Inflate.pm lib/IO/Uncompress/Inflate.pm
index 8d62603..cc53ed7 100644
--- lib/IO/Uncompress/Inflate.pm
+++ lib/IO/Uncompress/Inflate.pm
@@ -16,7 +16,7 @@ our ($VERSION, @ISA, @EXPORT_OK, %EXPORT_TAGS, $InflateError);
$VERSION = '2.072';
$InflateError = '';
-@ISA = qw( Exporter IO::Uncompress::RawInflate );
+@ISA = qw(IO::Uncompress::RawInflate Exporter);
@EXPORT_OK = qw( $InflateError inflate ) ;
%EXPORT_TAGS = %IO::Uncompress::RawInflate::DEFLATE_CONSTANTS ;
push @{ $EXPORT_TAGS{all} }, @EXPORT_OK ;
diff --git lib/IO/Uncompress/RawInflate.pm lib/IO/Uncompress/RawInflate.pm
index c0d481b..cda31ca 100755
--- lib/IO/Uncompress/RawInflate.pm
+++ lib/IO/Uncompress/RawInflate.pm
@@ -17,7 +17,7 @@ our ($VERSION, @ISA, @EXPORT_OK, %EXPORT_TAGS, %DEFLATE_CONSTANTS, $RawInflateEr
$VERSION = '2.072';
$RawInflateError = '';
-@ISA = qw( Exporter IO::Uncompress::Base );
+@ISA = qw(IO::Uncompress::Base Exporter);
@EXPORT_OK = qw( $RawInflateError rawinflate ) ;
%DEFLATE_CONSTANTS = ();
%EXPORT_TAGS = %IO::Uncompress::Base::EXPORT_TAGS ;
diff --git lib/IO/Uncompress/Unzip.pm lib/IO/Uncompress/Unzip.pm
index 41235ed..af7e4fa 100644
--- lib/IO/Uncompress/Unzip.pm
+++ lib/IO/Uncompress/Unzip.pm
@@ -21,7 +21,7 @@ use Compress::Raw::Zlib 2.072 () ;
BEGIN
{
eval{ require IO::Uncompress::Adapter::Bunzip2 ;
- import IO::Uncompress::Adapter::Bunzip2 } ;
+ import IO::Uncompress::Adapter::Bunzip2 } ;
eval{ require IO::Uncompress::Adapter::UnLzma ;
import IO::Uncompress::Adapter::UnLzma } ;
}
@@ -34,7 +34,7 @@ our ($VERSION, @ISA, @EXPORT_OK, %EXPORT_TAGS, $UnzipError, %headerLookup);
$VERSION = '2.072';
$UnzipError = '';
-@ISA = qw(Exporter IO::Uncompress::RawInflate);
+@ISA = qw(IO::Uncompress::RawInflate Exporter);
@EXPORT_OK = qw( $UnzipError unzip );
%EXPORT_TAGS = %IO::Uncompress::RawInflate::EXPORT_TAGS ;
push @{ $EXPORT_TAGS{all} }, @EXPORT_OK ;
--
2.11.1