
     1  %begin
503 @ 4405:         LINE   1 "regression-compile-tmp/testprocparam.imp"
504 @ 4449:         BEGIN  _lev0id0 {lev=0 --> 1}

     2    %routine do(%integerfn fn(%integer p,q,r))
505 @ 4450:            LINE   2 "regression-compile-tmp/testprocparam.imp"
506 @ 4494:            DEF    DO (_lev0id0_DO) p1=V_0081 a/tf=7 b/format=0 c/ostate=0  type=0 (<type:0>) form=7 (routine) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
507 @ 4508:               START  ( FORMAL PARAMETERS  {lev=2 --> 3, nested=0 --> 1}
508 @ 4509:                  DEF    FN (PROCEDURE PARAMETER _lev0id0_DO_FN) ***** REPLACEMENT CONTENDER ***** p1=V_0082 a/tf=18 b/format=1 c/ostate=10  type=1 (integer) form=8 (function) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=1 unass=0
509 @ 4523:               FINISH ) {lev=2}
510 @ 4524:               DEF    FN (_lev0id0_DO_FN) ***** MASTER ****** p1=V_0082 a/tf=18 b/format=1 c/ostate=18  type=1 (integer) form=8 (function) special=0 (<special:0>) linkage=0 (auto) spec=1 indirect=1 unass=0
511 @ 4538:               START  ( FORMAL PARAMETERS  {lev=2 --> 3, nested=0 --> 1}
512 @ 4539:                  DEF    P p1=V_0083 a/tf=11 b/format=1 c/ostate=0  type=1 (integer) form=1 (simple) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
513 @ 4552:                  DEF    Q p1=V_0084 a/tf=11 b/format=1 c/ostate=0  type=1 (integer) form=1 (simple) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
514 @ 4565:                  DEF    R p1=V_0085 a/tf=11 b/format=1 c/ostate=0  type=1 (integer) form=1 (simple) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
515 @ 4578:               FINISH ) {lev=2}

     3      %integer i
516 @ 4579:               LINE   3 "regression-compile-tmp/testprocparam.imp"
517 @ 4623:               DEF    I p1=V_0083 a/tf=11 b/format=1 c/ostate=0  type=1 (integer) form=1 (simple) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0

     4      i = fn(1,2,3)
518 @ 4636:               LINE   4 "regression-compile-tmp/testprocparam.imp"
519 @ 4680:               PUSH   I
520 @ 4683:               PUSH   FN
521 @ 4686:               PUSHI  #0x00000001
522 @ 4691:               ASSPAR
523 @ 4692:               PUSHI  #0x00000002
524 @ 4697:               ASSPAR
525 @ 4698:               PUSHI  #0x00000003
526 @ 4703:               ASSPAR
527 @ 4704:               CALL  
528 @ 4705:               ASSVAL

     5    %end
     6  
529 @ 4706:               LINE   5 "regression-compile-tmp/testprocparam.imp"
530 @ 4750:            END    _lev0id0_DO {lev=2 --> 1}

     7    %integerfn average(%integer a,b,c)
531 @ 4751:            LINE   7 "regression-compile-tmp/testprocparam.imp"
532 @ 4795:            DEF    AVERAGE (_lev0id0_AVERAGE) p1=V_0082 a/tf=18 b/format=1 c/ostate=10  type=1 (integer) form=8 (function) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=1 unass=0
533 @ 4814:               START  ( FORMAL PARAMETERS  {lev=2 --> 3, nested=0 --> 1}
534 @ 4815:                  DEF    A p1=V_0083 a/tf=11 b/format=1 c/ostate=0  type=1 (integer) form=1 (simple) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
535 @ 4828:                  DEF    B p1=V_0084 a/tf=11 b/format=1 c/ostate=0  type=1 (integer) form=1 (simple) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
536 @ 4841:                  DEF    C p1=V_0085 a/tf=11 b/format=1 c/ostate=0  type=1 (integer) form=1 (simple) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
537 @ 4854:               FINISH ) {lev=2}

     8      %result = (a+b+c)//3
538 @ 4855:               LINE   8 "regression-compile-tmp/testprocparam.imp"
539 @ 4899:               PUSH   A
540 @ 4902:               PUSH   B
541 @ 4905:               ADD   
542 @ 4906:               PUSH   C
543 @ 4909:               ADD   
544 @ 4910:               PUSHI  #0x00000003
545 @ 4915:               QUOT  
546 @ 4916:               RESULT

     9    %end
    10  
547 @ 4917:               LINE   9 "regression-compile-tmp/testprocparam.imp"
548 @ 4961:            END    _lev0id0_AVERAGE {lev=2 --> 1}

    11    do(average)
549 @ 4962:            LINE   11 "regression-compile-tmp/testprocparam.imp"
550 @ 5006:            PUSH   DO
551 @ 5009:            PUSH   AVERAGE
552 @ 5012:            ASSPAR
553 @ 5013:            CALL  

    12  %endofprogram
554 @ 5014:            LINE   12 "regression-compile-tmp/testprocparam.imp"
555 @ 5058:         END    _lev0id0 {lev=1 --> 0}
556 @ 5059:         END     {lev=0 --> -1}
557 @ 5060: 

REPLACING _lev0id0_DO_FN from 508 @ 4509:
WITH: 510
# Found $DEF at 4524
# Found {START at 4538
# Found $DEF at 4539
# Found $DEF at 4552
# Found $DEF at 4565
# Found }FINISH at 4578
