Skip to content

Instantly share code, notes, and snippets.

@yamasushi
Created May 7, 2013 06:47
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save yamasushi/5530699 to your computer and use it in GitHub Desktop.
Save yamasushi/5530699 to your computer and use it in GitHub Desktop.
"./vminsn.scm", line 1373: Assertion failed: SCM_PAIRP((vm)->handlers)
VM 0x8a23d20 -----------------------------------------------------------
pc: 08b3ef44 (0000000e)
sp: 0x8a25010 base: 0x8a25000 [0x8a25000-0x8a2ec40]
argp: 0x8a25010
val0: #<undef>
envs:
0x8a25004 #f
up=0x8b36248 size=1
[ (#<undef>) ]
0x8b36248 #f
up=0x8b38354 size=2
[ #<closure (proc #:G4)> #<closure (proc #:G5)> ]
0x8b38354 (proc #:G3)
up=(nil) size=1
[ #<closure (call/pc #f #f)> ]
conts:
0x8b362b8
env = (nil)
size = 0
pc = 0x69c740 (00000000)
base = 0x8b3df18
0x8b362a4
env = 0x6304a4
size = 1
pc = {cproc 0x52cb40}
base = 0x675cc8
0x8b3b708
env = 0x6304a4
size = 2
pc = {cproc 0x4ca0a0}
base = 0x675cc8
0x8b36390
env = (nil)
size = 0
pc = 0x69c740 (00000000)
base = (nil)
C stacks:
0xbfafc42c: prev=0xbfafc6ac, cont=0x8b362b8
0xbfafc6ac: prev=(nil), cont=0x8b36390
Escape points:
dynenv: ()
Code:
before,thunk,after,reset,after,before,thunk,after,reset,=== main_code (name=(proc #:G3), code=0x8b3eed8, size=37, const=5 stack=14):
args: #f
0 GREF-PUSH #<gloc user##:G5 const>; #:G5
2 GREF-PUSH #<gloc user##:G4 const>; #:G4
4 LOCAL-ENV(2) ; (dynamic-wind (lambda () (display "befor ...
5 PRE-CALL(0) 10
7 GREF #<gloc user##:G4 const>; #:G4
9 LOCAL-ENV-CALL(0) ; (lambda () (display "before,"))
10 GREF-PUSH #<gloc user##:G4 const>; #:G4
12 GREF #<gloc user##:G5 const>; #:G5
14 PUSH-HANDLERS ; (dynamic-wind (lambda () (display "befor ...
15 PRE-CALL(1) 21
17 CONST-PUSH "thunk,"
19 GREF-CALL(1) #<gloc scheme#display>; (display "thunk,")
21 PRE-CALL(0) 25
23 LREF10 ; k
24 CALL(0) ; (k)
25 TAIL-RECEIVE(0,1)
26 POP-HANDLERS ; (dynamic-wind (lambda () (display "befor ...
27 PRE-CALL(0) 32
29 GREF #<gloc user##:G5 const>; #:G5
31 LOCAL-ENV-CALL(0) ; (lambda () (display "after,"))
32 GREF-PUSH #<gloc scheme#values inlinable>; values
34 LREF0 exitting...
; 2011-06-20 - 健康優良無職
; http://d.hatena.ne.jp/ayatoy/20110620
; のコードを試してみる。
(use gauche.partcont)
(define (proc)
(reset (shift k
(dynamic-wind
(lambda () (display "before,"))
(lambda () (display "thunk,") (k))
(lambda () (display "after,"))))
(display "reset,")))
(proc)
(proc)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment