t/op/stash.t See if %:: stashes work
t/op/stat.t See if stat works
t/op/study.t See if study works
+t/op/sub.t See if subroutines work
t/op/sub_lval.t See if lvalue subroutines work
t/op/subst_amp.t See if $&-related substitution works
t/op/substr.t See if substr works
o->op_seq = PL_op_seqmax++;
break;
case OP_STUB:
+ if(!oldop &&
+ o->op_next &&
+ o->op_next->op_type == OP_LEAVESUB) {
+ OP* newop = newSTATEOP(0, Nullch, 0);
+ newop->op_next = o->op_next;
+ o->op_next = 0;
+ op_free(o);
+ o = newop;
+ ((UNOP*)o->op_next)->op_first = newop;
+ CvSTART(PL_compcv) = newop;
+ }
if ((o->op_flags & OPf_WANT) != OPf_WANT_LIST) {
o->op_seq = PL_op_seqmax++;
break; /* Scalar stub must produce undef. List stub is noop */
--- /dev/null
+#!./perl
+
+BEGIN {
+ chdir 't' if -d 't';
+ @INC = '../lib';
+ require Config; import Config;
+}
+
+use Test::More tests => 4;
+
+sub empty_sub {}
+
+is(empty_sub,undef,"Is empty");
+is(empty_sub(1,2,3),undef,"Is still empty");
+@test = empty_sub();
+is(scalar(@test), 0, 'Didnt return anything');
+@test = empty_sub(1,2,3);
+is(scalar(@test), 0, 'Didnt return anything');
+