diff --git a/collects/deinprogramm/signature/signature-syntax.rkt b/collects/deinprogramm/signature/signature-syntax.rkt index d83b0792d9..226a5368af 100644 --- a/collects/deinprogramm/signature/signature-syntax.rkt +++ b/collects/deinprogramm/signature/signature-syntax.rkt @@ -132,6 +132,10 @@ ?access ?signature-expr ?stx))) + ((signature ?stuff ...) + (raise-syntax-error #f + "`signature' als Operator ergibt keinen Sinn" + stx)) ((?signature-abstr ?signature ...) (identifier? #'?signature-abstr) (with-syntax ((?stx (phase-lift stx)) @@ -139,6 +143,7 @@ ((?signature-expr ...) (map (lambda (sig) (parse-signature #f sig)) (syntax->list #'(?signature ...))))) + (with-syntax ((?call (syntax/loc stx (?signature-abstr ?signature-expr ...)))) #'(make-call-signature '?name @@ -146,7 +151,7 @@ (delay ?signature-abstr) (delay (list ?signature-expr ...)) ?stx)))) (else - (raise-syntax-error 'signature + (raise-syntax-error #f "ungültige Signatur" stx)))) ; regrettable diff --git a/collects/lang/private/signature-syntax.rkt b/collects/lang/private/signature-syntax.rkt index f12e901d3f..5936a08845 100644 --- a/collects/lang/private/signature-syntax.rkt +++ b/collects/lang/private/signature-syntax.rkt @@ -122,6 +122,10 @@ ?access ?signature-expr ?stx))) + ((signature ?stuff ...) + (raise-syntax-error #f + "`signature' makes no sense as an operator" + stx)) ((?signature-abstr ?signature ...) (identifier? #'?signature-abstr) (with-syntax ((?stx (phase-lift stx)) @@ -138,7 +142,7 @@ (delay (list ?signature-expr ...)) ?stx)))) (else - (raise-syntax-error 'signature + (raise-syntax-error #f "invalid signature" stx)))) ; regrettable