This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
better name for parameter to newGIVENOP()
authorZefram <zefram@fysh.org>
Tue, 5 Dec 2017 22:39:42 +0000 (22:39 +0000)
committerZefram <zefram@fysh.org>
Tue, 5 Dec 2017 22:39:42 +0000 (22:39 +0000)
"cond" sounds like it's a condition.  It's actually supplying a topic.

embed.fnc
op.c
proto.h

index 925248e..9a90e43 100644 (file)
--- a/embed.fnc
+++ b/embed.fnc
@@ -1097,7 +1097,7 @@ Apd       |CV*    |newCONSTSUB_flags|NULLOK HV* stash \
                                  |U32 flags|NULLOK SV* sv
 Ap     |void   |newFORM        |I32 floor|NULLOK OP* o|NULLOK OP* block
 ApdR   |OP*    |newFOROP       |I32 flags|NULLOK OP* sv|NN OP* expr|NULLOK OP* block|NULLOK OP* cont
-ApdR   |OP*    |newGIVENOP     |NN OP* cond|NN OP* block|PADOFFSET defsv_off
+ApdR   |OP*    |newGIVENOP     |NN OP* topic|NN OP* block|PADOFFSET defsv_off
 ApdR   |OP*    |newLOGOP       |I32 optype|I32 flags|NN OP *first|NN OP *other
 pM     |LOGOP* |alloc_LOGOP    |I32 type|NULLOK OP *first|NULLOK OP *other
 ApdR   |OP*    |newLOOPEX      |I32 type|NN OP* label
diff --git a/op.c b/op.c
index 926ce41..2a4a699 100644 (file)
--- a/op.c
+++ b/op.c
@@ -8748,10 +8748,10 @@ Perl_newLOOPEX(pTHX_ I32 type, OP *label)
 }
 
 /*
-=for apidoc Am|OP *|newGIVENOP|OP *cond|OP *block|PADOFFSET defsv_off
+=for apidoc Am|OP *|newGIVENOP|OP *topic|OP *block|PADOFFSET defsv_off
 
 Constructs, checks, and returns an op tree expressing a C<given> block.
-C<cond> supplies the expression to whose value C<$_> will be locally
+C<topic> supplies the expression to whose value C<$_> will be locally
 aliased, and C<block> supplies the body of the C<given> construct; they
 are consumed by this function and become part of the constructed op tree.
 C<defsv_off> must be zero (it used to identity the pad slot of lexical $_).
@@ -8760,7 +8760,7 @@ C<defsv_off> must be zero (it used to identity the pad slot of lexical $_).
 */
 
 OP *
-Perl_newGIVENOP(pTHX_ OP *cond, OP *block, PADOFFSET defsv_off)
+Perl_newGIVENOP(pTHX_ OP *topic, OP *block, PADOFFSET defsv_off)
 {
     OP *enterop, *leaveop;
     PERL_ARGS_ASSERT_NEWGIVENOP;
@@ -8769,15 +8769,15 @@ Perl_newGIVENOP(pTHX_ OP *cond, OP *block, PADOFFSET defsv_off)
 
     NewOpSz(1101, enterop, sizeof(LOOP));
     OpTYPE_set(enterop, OP_ENTERGIVEN);
-    cLOOPx(enterop)->op_first = scalar(cond);
+    cLOOPx(enterop)->op_first = scalar(topic);
     cLOOPx(enterop)->op_last = block;
-    OpMORESIB_set(cond, block);
+    OpMORESIB_set(topic, block);
     OpLASTSIB_set(block, enterop);
     enterop->op_flags = OPf_KIDS;
 
     leaveop = newBINOP(OP_LEAVELOOP, 0, enterop, newOP(OP_NULL, 0));
-    leaveop->op_next = LINKLIST(cond);
-    cond->op_next = enterop;
+    leaveop->op_next = LINKLIST(topic);
+    topic->op_next = enterop;
     enterop = CHECKOP(OP_ENTERGIVEN, enterop);
     cLOOPx(enterop)->op_redoop = enterop->op_next = LINKLIST(block);
     cLOOPx(enterop)->op_lastop = cLOOPx(enterop)->op_nextop = block->op_next =
diff --git a/proto.h b/proto.h
index f89caae..640ee48 100644 (file)
--- a/proto.h
+++ b/proto.h
@@ -2160,10 +2160,10 @@ PERL_CALLCONV OP*       Perl_newFOROP(pTHX_ I32 flags, OP* sv, OP* expr, OP* block, OP
 #define PERL_ARGS_ASSERT_NEWFOROP      \
        assert(expr)
 
-PERL_CALLCONV OP*      Perl_newGIVENOP(pTHX_ OP* cond, OP* block, PADOFFSET defsv_off)
+PERL_CALLCONV OP*      Perl_newGIVENOP(pTHX_ OP* topic, OP* block, PADOFFSET defsv_off)
                        __attribute__warn_unused_result__;
 #define PERL_ARGS_ASSERT_NEWGIVENOP    \
-       assert(cond); assert(block)
+       assert(topic); assert(block)
 
 PERL_CALLCONV GP *     Perl_newGP(pTHX_ GV *const gv);
 #define PERL_ARGS_ASSERT_NEWGP \