[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Chicken-users] sandbox egg: C_emit_trace_info
From: |
Jim Ursetto |
Subject: |
Re: [Chicken-users] sandbox egg: C_emit_trace_info |
Date: |
Sat, 1 Oct 2011 19:18:32 -0500 |
Patch looks good to me but should be ACKed by the egg author (Felix)
On Oct 1, 2011, at 5:01 PM, Alan Post wrote:
> The sandbox egg makes a call to the runtime.c procedure:
>
> C_emit_trace_info
>
> In commit 2d5244dd01d4e91ed6f73bb566e92f04a2ab6361 of core,
> this procedure was deprecated in favor of:
>
> C_emit_eval_trace_info
> C_emit_syntax_trace_info
>
> Below is the patch bringing the sandbox egg up-to-date with
> this API change. I noted that the C_emit_trace_info was
> mapped to C_emit_eval_trace_info, so I changed all of the
> calls in the sandbox egg to C_emit_eval_trace_info.
>
> Would someone that better understands this egg verify that
> none of the calls should instead be to C_emit_syntax_trace_info?
>
> Will someone with access rights apply this patch to the trunk
> branch of the sandbox egg?
>
> -Alan
>
> <++> sandbox-trace-info.patch
> Index: sandbox.scm
> ===================================================================
> --- sandbox.scm (revision 25270)
> +++ sandbox.scm (working copy)
> @@ -455,8 +455,8 @@
> (and (list? lst)
> (length lst) ) )
>
> - (define (emit-trace-info info)
> - (##core#inline "C_emit_trace_info" info #f ##sys#current-thread) )
> + (define (emit-eval-trace-info info)
> + (##core#inline "C_emit_eval_trace_info" info #f ##sys#current-thread) )
>
> (define (compile-call x e)
> (let* ([fn (compile (car x) e #f)]
> @@ -466,25 +466,25 @@
> (case argc
> [(#f) (##sys#syntax-error-hook "syntax error - malformed expression" x)]
> [(0) (lambda (v)
> - (emit-trace-info info)
> + (emit-eval-trace-info info)
> (check-point fuel/lambda)
> ((##core#app fn v)) ) ]
> [(1) (let ([a1 (compile (car args) e #f)])
> (lambda (v)
> - (emit-trace-info info)
> + (emit-eval-trace-info info)
> (check-point fuel/lambda)
> ((##core#app fn v) (##core#app a1 v))) ) ]
> [(2) (let* ([a1 (compile (car args) e #f)]
> [a2 (compile (list-ref args 1) e #f)] )
> (lambda (v)
> - (emit-trace-info info)
> + (emit-eval-trace-info info)
> (check-point fuel/lambda)
> ((##core#app fn v) (##core#app a1 v) (##core#app a2 v))) ) ]
> [(3) (let* ([a1 (compile (car args) e #f)]
> [a2 (compile (list-ref args 1) e #f)]
> [a3 (compile (list-ref args 2) e #f)] )
> (lambda (v)
> - (emit-trace-info info)
> + (emit-eval-trace-info info)
> (check-point fuel/lambda)
> ((##core#app fn v) (##core#app a1 v) (##core#app a2 v)
> (##core#app a3 v))) ) ]
> [(4) (let* ([a1 (compile (car args) e #f)]
> @@ -492,12 +492,12 @@
> [a3 (compile (list-ref args 2) e #f)]
> [a4 (compile (list-ref args 3) e #f)] )
> (lambda (v)
> - (emit-trace-info info)
> + (emit-eval-trace-info info)
> (check-point fuel/lambda)
> ((##core#app fn v) (##core#app a1 v) (##core#app a2 v)
> (##core#app a3 v) (##core#app a4 v))) ) ]
> [else (let ([as (map (lambda (a) (compile a e #f)) args)])
> (lambda (v)
> - (emit-trace-info info)
> + (emit-eval-trace-info info)
> (check-point fuel/lambda)
> (apply (##core#app fn v) (map (lambda (a) (##core#app a v))
> as))) ) ] ) ) )
>
> <-->
> --
> .i ma'a lo bradi cu penmi gi'e du
>
> _______________________________________________
> Chicken-users mailing list
> address@hidden
> https://lists.nongnu.org/mailman/listinfo/chicken-users