Using call/cc instead of call-cc causes this example to pass. Unfortunately for 
me, it does not cause my real program to pass.

Todd D.


________________________________
From: [email protected] [[email protected]] on behalf of Dukes, Todd
Sent: Monday, August 04, 2014 7:37 PM
To: [email protected]
Subject: [bigloo] Failing example: RE: problem with continuations and corrupted 
data


Compile with command line at top of  corrupted-let-problem-example.scm
Run with no arguments. My output looks like this:

bash-4.2$ ./corrupted-let-problem-example
(user-main 1)
p0 5
(p0:(s-ADD ((addr-mode disp) (dst (reg AL)) (src (disp 8192)))))
p1  3.(ebx ((23 34)))
(p1:(s-ADD ((addr-mode disp) (dst (reg AL)) (src (disp 13568)))))
(s-go (thread-exit-length 2))
p0 7
p0 8
(p0:(s-ADD ((addr-mode reg-imm) (dst (reg BX)) (src (imm 0)))))
p1  4.(ebx 165)
(s-go (thread-exit-length 1))
p0 9
(s-go (thread-exit-length 0))
bash-4.2$

The line 'p1 4.(ebx 165)' is incorrect. The value of ebx has taken on the value 
passed to the check-mem function on line 20 of correupted-let-interpreted.scm

This can be verified by changing the value and running again. When I did this, 
I saw the output change to match.

Let me know if you cannot reproduce or if I am misunderstanding how 
continuations should work.

Thanks,
Todd D.



________________________________


Reply via email to