Document S_doeval’s calling convention
authorFather Chrysostomos <sprout@cpan.org>
Thu, 17 Nov 2011 02:21:16 +0000 (18:21 -0800)
committerFather Chrysostomos <sprout@cpan.org>
Thu, 17 Nov 2011 17:18:03 +0000 (09:18 -0800)
This should make it easier for future maintainers, who now will not
have to figure out what I figured out.

pp_ctl.c

index 23e4d9d..547a33e 100644 (file)
--- 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)
 {