diff options
Diffstat (limited to 'module/util')
-rw-r--r-- | module/util/exceptions.scm | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/module/util/exceptions.scm b/module/util/exceptions.scm index 8db18605..f316451d 100644 --- a/module/util/exceptions.scm +++ b/module/util/exceptions.scm @@ -83,3 +83,13 @@ (throw 'assertion-error "Assertion for ~a failed, ~a" (quote ,form) ((@@ (util exceptions) prettify-tree) ,(cons 'list form))))) + + +(define-syntax catch-warnings + (syntax-rules () + ((_ default body ...) + (parametrize ((warnings-are-errors #t)) + (catch 'warning + (lambda () + body ...) + (lambda _ default)))))) |