diff options
author | Matthias Benkard <code@mail.matthias.benkard.de> | 2008-03-04 17:06:02 +0100 |
---|---|---|
committer | Matthias Benkard <code@mail.matthias.benkard.de> | 2008-03-04 17:06:02 +0100 |
commit | 3c28fcb9acb8b742050409b360ec3d7b9e006216 (patch) | |
tree | 99318cd0106d912f521ea3196367052aa7a66269 /Lisp | |
parent | cb2858af09521a572ba8d222f1d1b21324ab6f44 (diff) |
Add a note about exception handling to ADD-METHOD (OBJECTIVE-C-GENERIC-FUNCTION OBJECTIVE-C-METHOD).
darcs-hash:5504ab9f0855575e5475118f7e95de779369d0e8
Diffstat (limited to 'Lisp')
-rw-r--r-- | Lisp/method-definition.lisp | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/Lisp/method-definition.lisp b/Lisp/method-definition.lisp index 6df7feb..7e71f31 100644 --- a/Lisp/method-definition.lisp +++ b/Lisp/method-definition.lisp @@ -131,6 +131,17 @@ ;; Leave the second argument (the ;; selector) out. ,@(list* (car arguments) (cddr arguments))) + ;; FIXME: We may want to wrap signalled + ;; SERIOUS-CONDITIONS in some kind of + ;; Objective-C exception object and put + ;; it into *OBJCL-CURRENT-EXCEPTION*. Or + ;; maybe we don't, assuming the Lisp + ;; system can handle a few layers of C + ;; functions between a condition's + ;; signalling and handling, in which case + ;; we'd only destroy the restart + ;; mechanism by pseudo-handling + ;; conditions in this way. (%objcl-acquire-lock *objcl-current-exception-lock*)))))) (let ((callback (get-callback callback-name))) (with-foreign-object (arg-typestring-buffer :string |