~ chicken-core (chicken-5) bff0472a148dee1f600557423240b32a07b46eda


commit bff0472a148dee1f600557423240b32a07b46eda
Author:     unknown <felix@.(none)>
AuthorDate: Fri Oct 30 12:43:17 2009 +0100
Commit:     unknown <felix@.(none)>
CommitDate: Fri Oct 30 12:43:17 2009 +0100

    removed remaining references and support code for breakpoints; removed uses of NOAPPLYHOOK in makefiles

diff --git a/Makefile.bsd b/Makefile.bsd
index 57ee1b1e..84307e27 100644
--- a/Makefile.bsd
+++ b/Makefile.bsd
@@ -97,9 +97,6 @@ endif
 ifdef SYMBOLGC
 	echo "#define C_COLLECT_ALL_SYMBOLS" >>$@
 endif
-ifdef NOAPPLYHOOK
-	echo "#define C_NO_APPLY_HOOK" >>$@
-endif
 ifneq ($(HACKED_APPLY),)
 	echo "#define C_HACKED_APPLY" >>$@
 endif
diff --git a/Makefile.cross-linux-mingw b/Makefile.cross-linux-mingw
index 5bcb014a..1f246059 100644
--- a/Makefile.cross-linux-mingw
+++ b/Makefile.cross-linux-mingw
@@ -129,9 +129,6 @@ ifdef GCHOOKS
 endif
 ifdef SYMBOLGC
 	echo "#define C_COLLECT_ALL_SYMBOLS" >>$@
-endif
-ifdef NOAPPLYHOOK
-	echo "#define C_NO_APPLY_HOOK" >>$@
 endif
 	echo "#define C_HACKED_APPLY" >>$@
 	cat chicken-defaults.h >>$@
diff --git a/Makefile.cygwin b/Makefile.cygwin
index 9ec8c867..5c693c4c 100644
--- a/Makefile.cygwin
+++ b/Makefile.cygwin
@@ -123,9 +123,6 @@ endif
 ifdef SYMBOLGC
 	echo "#define C_COLLECT_ALL_SYMBOLS" >>$@
 endif
-ifdef NOAPPLYHOOK
-	echo "#define C_NO_APPLY_HOOK" >>$@
-endif
 ifdef HACKED_APPLY
 	echo "#define C_HACKED_APPLY" >>$@
 endif
diff --git a/Makefile.linux b/Makefile.linux
index bc3b9e35..c8506b9c 100644
--- a/Makefile.linux
+++ b/Makefile.linux
@@ -94,9 +94,6 @@ endif
 ifdef SYMBOLGC
 	echo "#define C_COLLECT_ALL_SYMBOLS" >>$@
 endif
-ifdef NOAPPLYHOOK
-	echo "#define C_NO_APPLY_HOOK" >>$@
-endif
 ifneq ($(HACKED_APPLY),)
 	echo "#define C_HACKED_APPLY" >>$@
 endif
diff --git a/Makefile.macosx b/Makefile.macosx
index 581b8d08..bf3f59ea 100644
--- a/Makefile.macosx
+++ b/Makefile.macosx
@@ -124,9 +124,6 @@ endif
 ifdef SYMBOLGC
 	echo "#define C_COLLECT_ALL_SYMBOLS" >>$@
 endif
-ifdef NOAPPLYHOOK
-	echo "#define C_NO_APPLY_HOOK" >>$@
-endif
 ifneq ($(HACKED_APPLY),)
 	echo "#define C_HACKED_APPLY" >>$@
 endif
diff --git a/Makefile.mingw b/Makefile.mingw
index b7a75e05..45bc7fae 100644
--- a/Makefile.mingw
+++ b/Makefile.mingw
@@ -129,9 +129,6 @@ ifdef GCHOOKS
 endif
 ifdef SYMBOLGC
 	echo #define C_COLLECT_ALL_SYMBOLS >>$@
-endif
-ifdef NOAPPLYHOOK
-	echo #define C_NO_APPLY_HOOK >>$@
 endif
 	echo #define C_HACKED_APPLY >>$@
 	type chicken-defaults.h >>$@
diff --git a/Makefile.mingw-msys b/Makefile.mingw-msys
index 7572c197..116b3d80 100644
--- a/Makefile.mingw-msys
+++ b/Makefile.mingw-msys
@@ -118,9 +118,6 @@ ifdef GCHOOKS
 endif
 ifdef SYMBOLGC
 	echo "#define C_COLLECT_ALL_SYMBOLS" >>$@
-endif
-ifdef NOAPPLYHOOK
-	echo "#define C_NO_APPLY_HOOK" >>$@
 endif
 	echo "#define C_HACKED_APPLY" >>$@
 	cat chicken-defaults.h >>$@
diff --git a/Makefile.solaris b/Makefile.solaris
index 9dbb4d50..8987282a 100644
--- a/Makefile.solaris
+++ b/Makefile.solaris
@@ -89,9 +89,6 @@ endif
 ifdef SYMBOLGC
 	echo "#define C_COLLECT_ALL_SYMBOLS" >>$@
 endif
-ifdef NOAPPLYHOOK
-	echo "#define C_NO_APPLY_HOOK" >>$@
-endif
 ifneq ($(HACKED_APPLY),)
 	echo "#define C_HACKED_APPLY" >>$@
 endif
diff --git a/chicken.import.scm b/chicken.import.scm
index 61bef7d8..db004ba8 100644
--- a/chicken.import.scm
+++ b/chicken.import.scm
@@ -40,7 +40,6 @@
    blob-size
    blob?
    blob=?
-   breakpoint
    build-platform
    c-runtime
    call/cc
diff --git a/scheduler.scm b/scheduler.scm
index 69f1a603..af2ce503 100644
--- a/scheduler.scm
+++ b/scheduler.scm
@@ -479,55 +479,3 @@ EOF
 	       (loop (##sys#slot fdl 1)) ) ) ) ) )
     (##sys#setislot t 12 '())
     (##sys#thread-basic-unblock! t) ) )
-
-
-;;; Multithreaded breakpoints
-
-(define (##sys#break-entry name args)
-  (when (or (not ##sys#break-in-thread) (eq? ##sys#break-in-thread ##sys#current-thread))
-    (##sys#call-with-current-continuation
-     (lambda (k)
-       (let* ((pk (if (eq? ##sys#current-thread ##sys#primordial-thread)
-		      '()
-		      (list '(exn . thread) ##sys#current-thread
-			    '(exn . primordial-continuation) 
-			    (lambda _ ((##sys#slot ##sys#primordial-thread 1))))))
-	      (exn (##sys#make-structure
-		    'condition
-		    '(exn breakpoint)
-		    (append 
-		     (list '(exn . message) "*** breakpoint ***"
-			   '(exn . arguments) (cons name args)
-			   '(exn . location) name
-			   '(exn . continuation) k)
-		     pk) ) ) )
-	 (set! ##sys#last-breakpoint exn)
-	 (cond ((eq? ##sys#current-thread ##sys#primordial-thread)
-		(##sys#signal exn) )
-	       (else
-		(##sys#setslot ##sys#current-thread 3 'suspended)
-		(##sys#setslot ##sys#current-thread 1 (lambda () (k (##core#undefined))))
-		(let ([old (##sys#slot ##sys#primordial-thread 1)])
-		  (##sys#setslot
-		   ##sys#primordial-thread 1
-		   (lambda ()
-		     (##sys#signal exn)
-		     (old) ) )
-		  (##sys#thread-unblock! ##sys#primordial-thread)
-		  (##sys#schedule) ) ) ) ) ) ) ) )
-		  
-(define (##sys#break-resume exn)
-  ;; assumes current-thread is primordial
-  (let* ((props (##sys#slot exn 2))
-	 (a (member '(exn . continuation) props))
-	 (t (member '(exn . thread) props))
-	 (pk (or (member '(exn . primordial-continuation) props) a)))
-    (when t
-      (let ((t (cadr t)))
-	(if a
-	    (##sys#setslot t 1 (lambda () ((cadr a) (##core#undefined))))
-	    (##sys#signal-hook #:type-error "condition has no continuation" exn) )
-	(##sys#add-to-ready-queue t) ) )
-    (if pk
-	((cadr pk) (##core#undefined))
-	(##sys#signal-hook #:type-error "condition has no continuation" exn) ) ) )
Trap