summaryrefslogtreecommitdiff
path: root/module/srfi/srfi-9.scm
diff options
context:
space:
mode:
authorAndy Wingo <wingo@pobox.com>2013-11-10 10:13:37 +0100
committerAndy Wingo <wingo@pobox.com>2013-11-10 10:17:44 +0100
commita2972c195dc6643dd6e1d518dc3a3014ed51d981 (patch)
tree3df8ad35216a6ce6de12cda54393708a4e313ec8 /module/srfi/srfi-9.scm
parent056110754ead55733879b0c8a5c0d773f576d5c6 (diff)
downloadguile-a2972c195dc6643dd6e1d518dc3a3014ed51d981.tar.gz
Effects analysis sees match-error, throw-bad-structs as bailouts
* module/language/tree-il/effects.scm (make-effects-analyzer): Allow module-ref calls to be treated as bailouts, if the procedure has the "definite-bailout?" property. Perhaps this should be renamed. * module/ice-9/match.upstream.scm (match-error): * module/srfi/srfi-9.scm (throw-bad-struct): Give these procedures the definite-bailout? property.
Diffstat (limited to 'module/srfi/srfi-9.scm')
-rw-r--r--module/srfi/srfi-9.scm1
1 files changed, 1 insertions, 0 deletions
diff --git a/module/srfi/srfi-9.scm b/module/srfi/srfi-9.scm
index 7275eafcf..355362af4 100644
--- a/module/srfi/srfi-9.scm
+++ b/module/srfi/srfi-9.scm
@@ -144,6 +144,7 @@
(display ">" p))
(define (throw-bad-struct s who)
+ #((definite-bailout? . #t))
(throw 'wrong-type-arg who
"Wrong type argument: ~S" (list s)
(list s)))