make match exception transparent

This push makes the exn:misc:match exception transparent. This
matches other racket-raised user exceptions.

The motivation for this change was breakage in the handin-server;
specifically, the discussion in

https://groups.google.com/forum/#!topic/racket-users/nEos3-osoWE

...in which the handin-server was not behaving the same on exn:misc:match
because it was not transparent. This caused the handin server to
refuse to rewrite these exceptions, resulting in less helpful
messages for users.
This commit is contained in:
John Clements 2016-05-04 14:19:04 -07:00
parent 9d3c193bcf
commit 7c26614343

View File

@ -17,7 +17,8 @@
(define match-equality-test (make-parameter equal?)) (define match-equality-test (make-parameter equal?))
(define-struct (exn:misc:match exn:fail) (value srclocs) (define-struct (exn:misc:match exn:fail) (value srclocs)
#:property prop:exn:srclocs (lambda (ex) (exn:misc:match-srclocs ex))) #:property prop:exn:srclocs (lambda (ex) (exn:misc:match-srclocs ex))
#:transparent)
(define (match:error val srclocs form-name) (define (match:error val srclocs form-name)