summaryrefslogtreecommitdiff
path: root/pp_ctl.c
diff options
context:
space:
mode:
authorFather Chrysostomos <sprout@cpan.org>2011-11-16 18:21:16 -0800
committerFather Chrysostomos <sprout@cpan.org>2011-11-17 09:18:03 -0800
commit7d116edc22c7aa687d04c9424079da4cac0f9255 (patch)
treefcc8bdece45150ec445feeaab018cd327a3a1d32 /pp_ctl.c
parentf45b078d20e995d83ee8428c8f199c0e6eca92f9 (diff)
downloadperl-7d116edc22c7aa687d04c9424079da4cac0f9255.tar.gz
Document S_doeval’s calling convention
This should make it easier for future maintainers, who now will not have to figure out what I figured out.
Diffstat (limited to 'pp_ctl.c')
-rw-r--r--pp_ctl.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/pp_ctl.c b/pp_ctl.c
index 23e4d9d596..547a33e033 100644
--- a/pp_ctl.c
+++ b/pp_ctl.c
@@ -3455,6 +3455,13 @@ S_try_yyparse(pTHX_ int gramtype)
* pushes undef (also croaks if startop != NULL).
*/
+/* This function is called from three places, sv_compile_2op, pp_return
+ * and pp_entereval. These can be distinguished as follows:
+ * sv_compile_2op - startop is non-null
+ * pp_require - startop is null; in_require is true
+ * pp_entereval - stortop is null; in_require is false
+ */
+
STATIC bool
S_doeval(pTHX_ int gimme, OP** startop, CV* outside, U32 seq, HV *hh)
{