ext/B/t/walkoptree.t See if B::walkoptree (and friends) work
ext/B/t/xref.t See if B::Xref works
ext/B/typemap Compiler backend interface types
+ext/Carp/lib/Carp/Heavy.pm Error message retired workhorse
+ext/Carp/lib/Carp.pm Error message extension
+ext/Carp/Makefile.PL makefile writer for Carp
+ext/Carp/t/Carp.t See if Carp works
ext/Devel-Peek/Changes Data debugging tool, changelog
ext/Devel-Peek/Makefile.PL Data debugging tool, makefile writer
ext/Devel-Peek/Peek.pm Data debugging tool, module and pod
lib/bytes_heavy.pl Support routines for byte pragma
lib/bytes.pm Pragma to enable byte operations
lib/bytes.t bytes.pm test
-lib/Carp/Heavy.pm Error message workhorse
-lib/Carp.pm Error message base class
-lib/Carp.t See if Carp works
lib/charnames.pm Character names
lib/charnames.t See if character names work
lib/Class/Struct.pm Declare struct-like datatypes as Perl classes
-rmdir cpan/CPANPLUS-Dist-Build/t/dummy-cpanplus cpan/CPANPLUS/t/dummy-cpanplus cpan/CPANPLUS/t/dummy-localmirror
-rmdir ext/B/lib
-rmdir lib/Archive/Tar lib/Archive lib/Attribute
- -rmdir lib/CGI
+ -rmdir lib/CGI lib/Carp
-rmdir lib/Data lib/Devel lib/Digest
-rmdir lib/ExtUtils/Command lib/ExtUtils/Constant lib/ExtUtils/Liblist lib/ExtUtils/MakeMaker
-rmdir lib/File/Spec lib/Filter/Util lib/Filter
'Carp' =>
{
'MAINTAINER' => 'p5p',
- 'FILES' => q[lib/Carp.{pm,t} lib/Carp/Heavy.pm],
+ 'FILES' => q[ext/Carp],
'UPSTREAM' => 'blead',
},
--- /dev/null
+use warnings;
+use strict;
+
+use ExtUtils::MakeMaker;
+
+WriteMakefile(
+ NAME => "Carp",
+ VERSION_FROM => "lib/Carp.pm",
+ ABSTRACT_FROM => "lib/Carp.pm",
+ PREREQ_PM => {
+ "Exporter" => 0,
+ "IPC::Open3" => "1.0104",
+ "Test::More" => 0,
+ "strict" => 0,
+ "warnings" => 0,
+ },
+ LICENSE => "perl",
+ INSTALLDIRS => "$]" < 5.011 ? "perl" : "site",
+);
+
+1;
-BEGIN {
- chdir 't' if -d 't';
- @INC = '../lib';
- require './test.pl';
-}
-
use warnings;
no warnings "once";
use Config;
+use IPC::Open3 1.0104 qw(open3);
+use Test::More tests => 58;
+
+sub runperl {
+ my(%args) = @_;
+ my($w, $r);
+ my $pid = open3($w, $r, undef, $^X, "-e", $args{prog});
+ close $w;
+ my $output = "";
+ while(<$r>) { $output .= $_; }
+ waitpid($pid, 0);
+ return $output;
+}
+
my $Is_VMS = $^O eq 'VMS';
use Carp qw(carp cluck croak confess);
BEGIN {
- plan tests => 58;
-
# This test must be run at BEGIN time, because code later in this file
# sets CORE::GLOBAL::caller
ok !exists $CORE::GLOBAL::{caller},
# UTF8-flagged strings should not cause Carp to try to load modules (even
# implicitly via utf8_heavy.pl) after a syntax error [perl #82854].
-fresh_perl_like(
- q<
- use utf8; use strict; use Carp;
- BEGIN { $SIG{__DIE__} = sub { Carp::croak "aaaaa$_[0]" } }
- $c
- >,
- qr/aaaaa/,
- {stderr=>1},
- 'Carp can handle UTF8-flagged strings after a syntax error',
+like(
+ runperl(
+ prog => q<
+ use utf8; use strict; use Carp;
+ BEGIN { $SIG{__DIE__} = sub { Carp::croak "aaaaa$_[0]" } }
+ $c
+ >,
+ stderr=>1,
+ ),
+ qr/aaaaa/,
+ 'Carp can handle UTF8-flagged strings after a syntax error',
);
SKIP:
{
skip("B:: always created when static", 1)
if $Config{static_ext} =~ /\bB\b/;
-
- fresh_perl_is(
- q<
- use Carp;
- $SIG{__WARN__} = sub{};
- carp ("A duck, but which duck?");
- print "ok" unless exists $::{"B::"};
- >,
- 'ok',
- {},
- 'Carp does not autovivify *B::'
+ is(
+ runperl(
+ prog => q<
+ use Carp;
+ $SIG{__WARN__} = sub{};
+ carp ("A duck, but which duck?");
+ print "ok" unless exists $::{"B::"};
+ >,
+ ),
+ 'ok',
+ 'Carp does not autovivify *B::',
);
- }
+}
# New tests go here
/CPANPLUS/Shell/Default/Plugins/HOWTO.pod
/CPANPLUS/Shell/Default/Plugins/Remote.pm
/CPANPLUS/Shell/Default/Plugins/Source.pm
+/Carp.pm
+/Carp/Heavy.pm
/Class/ISA.pm
/Compress
/Config.pm
# allow miniperl to build everything else.
my @toolchain = qw(cpan/AutoLoader/lib
+ ext/Carp/lib
dist/Cwd dist/Cwd/lib
dist/ExtUtils-Command/lib
dist/ExtUtils-Install/lib