Continuations objs are pairlike for GC marking.
authorTim Vaughan <tgvaughan@gmail.com>
Wed, 1 Aug 2018 14:43:26 +0000 (16:43 +0200)
committerTim Vaughan <tgvaughan@gmail.com>
Wed, 1 Aug 2018 14:43:26 +0000 (16:43 +0200)
src/scheme-primitives.4th
src/scheme.4th

index a9b4741..c3eeb5d 100644 (file)
@@ -617,8 +617,6 @@ defer display
         2swap 2drop
     then
 
         2swap 2drop
     then
 
-    trace
-
 ; 1 make-fa-primitive call-with-current-continuation
 
 \ }}}
 ; 1 make-fa-primitive call-with-current-continuation
 
 \ }}}
index 9d64667..9347750 100644 (file)
@@ -1790,7 +1790,7 @@ parse-idx-stack parse-idx-sp !
 
             2dup cdr
 
 
             2dup cdr
 
-            nil? not if
+            nil? invert if
                 except-message: ." Continuations expect exactly 1 argument."
                 recoverable-exception throw
             then
                 except-message: ." Continuations expect exactly 1 argument."
                 recoverable-exception throw
             then
@@ -2101,6 +2101,7 @@ parse-idx-stack parse-idx-sp !
     symbol-type istype? if true exit then
     compound-proc-type istype? if true exit then
     port-type istype? if true exit then
     symbol-type istype? if true exit then
     compound-proc-type istype? if true exit then
     port-type istype? if true exit then
+    continuation-type istype? if true exit then
 
     false
 ;
 
     false
 ;