Sample Usage

Note: The core testsuite must be run from CORE/t, and forces INC to ../lib

There's also an alternative setup with t/testcore.t using patched CORE tests:

p=5.6.2
perl$p Makefile.PL && make
mkdir -p t/CORE/
cp /usr/src/perl/perl-$p/t/* t/CORE/
perl -pi -e 's/^(\s*\@INC = )/# $1/' t/CORE/*/*.t

# try CORE compiler
perl$p script/perlcc -r --testsuite t/CORE/*/*.t

# try new compiler
perl$p -Mblib script/perlcc -r --testsuite t/CORE/*/*.t
perl$p script/perlcc -B -r --testsuite t/CORE/*/*.t
perl$p -Mblib script/perlcc -B -r --testsuite t/CORE/*/*.t
perl$p script/perlcc -O -r --testsuite t/CORE/*/*.t
perl$p -Mblib script/perlcc -O -r --testsuite t/CORE/*/*.t
# or simplier
perl$p -Mblib t/testcore.t

Test results from compiling t/*/*.t on 5.10.1

		C		Bytecode	CC

base/cond.t	OK		ok		OK
base/if.t	OK		ok		OK
base/lex.t	7,56		51		OK 
                                Undefined subroutine &xyz::foo
base/pat.t	OK		ok		OK
base/rs.t	see CC		ok		bad realloc ignored
base/term.t	OK		ok		OK
cmd/elsif.t	OK		ok		OK
cmd/for.t	OK		ok		"last" used outside loop
cmd/mod.t	8		8		8
cmd/subval.t	OK		ok		ok
cmd/switch.t	OK		ok		"next" used outside loop
cmd/while.t	OK		ok		"last" used outside loop, ... panic: leaveloop
comp/bproto.t   OK		ok		panic: restartop
comp/cmdopt.t	OK		ok		ok
comp/colon.t	OK		ok		ok
comp/cpp.t      ?
comp/decl.t	OK		ok		ok
comp/fold.t	fail		ok		fail B::OP::padix missing
comp/hints.t	OK		ok		ok
comp/multiline.t main::tempfile missing		fail B::OP::padix missing
comp/opsubs.t   todo
comp/our.t	Tieall::TIESCALAR missing
				ok		fail B::OP::padix missing
comp/package.t	OK		ok		ok
comp/parser.t	todo
comp/proto.t	OK		ok		ok
comp/redef.t	fail            ok              fail pp_anonsub_0 undeclared
comp/require.t  Wide character in print fail    ok
comp/retainedlines.t todo	ok		todo
comp/script.t   todo
comp/term.t	OK		ok		ok
comp/uproto.t   fail		ok		fail B::OP::padix missing
comp/use.t	fail		ok		fail Bad free() ignored
comp/utf.t	fail		ok		fail B::OP::padix missing
io/argv.t	OK		ok		ok
io/dup.t	OK		ok		ok
io/fs.t		OK		ok		ok
io/inplace.t	OK		ok		ok
io/pipe.t	OK		ok		ok with -umain
io/print.t	OK		ok		ok
io/tell.t	OK		ok		ok
op/anonsub.t	nok		nok		nok
op/append.t	OK		ok		OK
op/args.t	OK		ok		OK
op/arith.t	OK		ok		OK
op/array.t	OK		ok		OK
op/assignwarn.t nok
op/auto.t	OK		ok		OK
op/avhv.t	??
op/bop.t	34,35 silent	ok		hangs
op/chars.t	OK		ok		OK
op/chop.t	fail		ok		fail Bad realloc() ignored
op/closure.t    				needs rewrite, forks a new perl
op/cmp.t	OK		ok		OK
op/concat.t	4-6		ok		4-6 s/// with UTF-8
op/cond.t	OK		ok		OK
op/context.t	OK		ok		OK
op/defins.t	fail		ok		pp_anonsub_0 undeclared
op/delete.t	OK		ok		no B::OP::gv
op/die.t 	nok				hangs
op/do.t
op/each.t
op/eval.t
op/exec.t
op/exists_sub.t
op/exp.t
op/fh.t
op/filetest.t
op/flip.t
op/fork.t
op/glob.t
op/goto.t
op/goto_xs.t
op/grent.t
op/grep.t
op/groups.t
op/gv.t
op/hashwarn.t
op/inc.t
op/index.t
op/int.t
op/join.t
op/length.t
op/lex_assign.t
op/lfs.t
op/list.t
op/local.t
op/lop.t
op/magic.t
op/method.t
op/misc.t
op/mkdir.t
op/my.t
op/my_stash.t
op/nothr5005.t
op/numconvert.t
op/oct.t
op/ord.t
op/pack.t
op/pat.t
op/pos.t
op/push.t
op/pwent.t
op/quotemeta.t
op/rand.t
op/range.t
op/read.t
op/readdir.t
op/recurse.t
op/ref.t
op/regexp.t
op/regexp_noamp.t
op/regmesg.t
op/repeat.t
op/reverse.t
op/runlevel.t
op/sleep.t
op/sort.t
op/splice.t
op/split.t
op/sprintf.t
op/stat.t
op/study.t
op/subst.t
op/substr.t
op/subst_amp.t
op/subst_wamp.t
op/sysio.t
op/taint.t
op/tie.t

op/do.t		OK		ok		OK
op/each.t	OK		ok		OK
op/eval.t	OK		ok		ok 1-6 of 16 then exits
op/exec.t	OK		ok		OK
op/exp.t	OK		ok		OK
op/flip.t	OK		ok		OK
op/fork.t	OK		ok		OK
op/glob.t	OK		ok		OK
op/goto.t	OK		ok		1..9, Can't find label label1.
op/groups.t	OK (s/ucb/bin/ under Linux)	OK 1..0 for now.
op/index.t	OK		ok		OK
op/int.t	OK		ok		OK
op/join.t	OK		ok		OK
op/list.t	OK		ok		OK
op/local.t	OK		ok		OK
op/magic.t	OK		ok		OK
op/misc.t	no DATA filehandle so succeeds trivially with 1..0
op/mkdir.t	OK		ok		OK
op/my.t		OK		ok		OK
op/oct.t	OK		ok		OK (C large const warnings)
op/ord.t	OK		ok		OK
op/overload.t	Mostly not ok	Mostly not ok	C errors.
op/pack.t	OK		ok		OK
op/pat.t	omit 26 (reset)	ok		[lots of memory for compile]
op/push.t	OK		ok		OK
op/quotemeta.t	OK		ok		OK
op/rand.t	OK		ok		
op/range.t	OK		ok		OK
op/read.t	OK		ok		OK
op/readdir.t	OK		ok		OK (substcont works too)
op/ref.t	omits "ok 40" (lex destruction)	ok (Bytecode)
						CC: need -u for OBJ,BASEOBJ,
						UNIVERSAL,WHATEVER,main.
						1..41, ok1-33,36-38,
						then ok 41, ok 39.DESTROY probs
op/regexp.t	OK		ok		ok (trivially all eval'd)
op/repeat.t	OK		ok		ok
op/sleep.t	OK		ok		ok
op/sort.t	OK		ok		1..10, ok 1, Out of memory!
op/split.t	OK		ok		ok
op/sprintf.t	OK		ok		ok
op/stat.t	OK		ok		ok
op/study.t	OK		ok		ok
op/subst.t	OK		ok		ok
op/substr.t	OK		ok		ok1-22 except 7-9,11 (all $[)
op/taint.t
op/tie.t
op/tiearray.t
op/tiehandle.t
op/time.t	OK		ok		ok
op/tr.t
op/undef.t	omit 21		ok		ok
op/universal.t
op/unshift.t	OK		ok		ok
op/utf8decode.t
op/vec.t	OK		ok		ok
op/ver.t
op/wantarray.t
op/write.t	not ok 3 (no CvOUTSIDE lex from runtime eval). CC: 1..3, hang
run/cloexec.t	nok		ok		nok
run/exit.t	nok		ok		nok
run/fresh_perl.t nok		ok		nok
run/noswitch.t	nok		nok		nok	read from aliased DATA filehandle

# DISABLED
# testing external perl and its perl arguments is not fruitful
run/runenv.t	nok		nok		nok
run/switch0.t   ok              hangs		ok
run/switcha.t	fail		hangs		ok
run/switchC.t						BEGIN require tempfile missing
run/switchd.t
run/switches.t			nok		nok
run/switchF.t	nok		hangs		nok
run/switchF1.t
run/switchI.t
run/switchn.t			hangs
run/switchp.t			hangs
run/switchPx.t
run/switcht.t
run/switchx.t
