diff --git a/collects/tests/typed-scheme/succeed/at-exp.rkt b/collects/tests/typed-scheme/succeed/at-exp.rkt new file mode 100644 index 0000000000..1226a80958 --- /dev/null +++ b/collects/tests/typed-scheme/succeed/at-exp.rkt @@ -0,0 +1,9 @@ + +#lang at-exp typed/racket + +(define contents + (lambda args args)) + +(define doc @contents{x y}) + +@contents{x y} \ No newline at end of file diff --git a/collects/typed-scheme/language-info.rkt b/collects/typed-scheme/language-info.rkt index ebecb8e2f4..89f207ac48 100644 --- a/collects/typed-scheme/language-info.rkt +++ b/collects/typed-scheme/language-info.rkt @@ -14,5 +14,5 @@ (require (for-syntax typed-scheme/utils/tc-utils scheme/base)) (begin-for-syntax (set-box! typed-context? #t))) (current-namespace)) - (current-readtable readtable)) + (current-readtable (readtable))) diff --git a/collects/typed-scheme/typed-reader.rkt b/collects/typed-scheme/typed-reader.rkt index 3313c54289..2d4e2efa32 100644 --- a/collects/typed-scheme/typed-reader.rkt +++ b/collects/typed-scheme/typed-reader.rkt @@ -72,15 +72,15 @@ (let-values ([(l c p) (port-next-location port)]) (list src line col pos (and pos (- p pos)))))])) -(define readtable - (make-readtable #f #\{ 'dispatch-macro parse-id-type)) +(define (readtable) + (make-readtable (current-readtable) #\{ 'dispatch-macro parse-id-type)) (define (*read inp) - (parameterize ([current-readtable readtable]) + (parameterize ([current-readtable (readtable)]) (read inp))) (define (*read-syntax src port) - (parameterize ([current-readtable readtable]) + (parameterize ([current-readtable (readtable)]) (read-syntax src port))) (provide readtable (rename-out [*read read] [*read-syntax read-syntax]))