summaryrefslogtreecommitdiff
path: root/pp_proto.h
diff options
context:
space:
mode:
authorFather Chrysostomos <sprout@cpan.org>2012-08-25 18:48:46 -0700
committerFather Chrysostomos <sprout@cpan.org>2012-08-25 23:02:06 -0700
commitc8fe3bdf72b0df1c0b68f180001f0a3dde206992 (patch)
treee7b45c4208072ce5f7f584998768df0f720d4623 /pp_proto.h
parent721670045d5263bd28b147533785fbbf36671316 (diff)
downloadperl-c8fe3bdf72b0df1c0b68f180001f0a3dde206992.tar.gz
Banish boolkeys
Since 6ea72b3a1, rv2hv and padhv have had the ability to return boo- leans in scalar context, instead of bucket stats, if flagged the right way. sub { %hash || ... } is optimised to take advantage of this. If the || is in unknown context at compile time, the %hash is flagged as being maybe a true boolean. When flagged that way, it returns a bool- ean if block_gimme() returns G_VOID. If rv2hv and padhv can already do this, then we don’t need the boolkeys op any more. We can just flag the rv2hv to return a boolean. In all the cases where boolkeys was used, we know at compile time that it is true boolean context, so we add a new flag for that.
Diffstat (limited to 'pp_proto.h')
-rw-r--r--pp_proto.h1
1 files changed, 0 insertions, 1 deletions
diff --git a/pp_proto.h b/pp_proto.h
index 52011dadd3..833738d5dd 100644
--- a/pp_proto.h
+++ b/pp_proto.h
@@ -27,7 +27,6 @@ PERL_CALLCONV OP *Perl_pp_binmode(pTHX);
PERL_CALLCONV OP *Perl_pp_bit_and(pTHX);
PERL_CALLCONV OP *Perl_pp_bit_or(pTHX);
PERL_CALLCONV OP *Perl_pp_bless(pTHX);
-PERL_CALLCONV OP *Perl_pp_boolkeys(pTHX);
PERL_CALLCONV OP *Perl_pp_break(pTHX);
PERL_CALLCONV OP *Perl_pp_caller(pTHX);
PERL_CALLCONV OP *Perl_pp_chdir(pTHX);