From 3ff3d7eeada5024c8213d1978eb14b9cf90dc0aa Mon Sep 17 00:00:00 2001 From: Asumu Takikawa Date: Thu, 21 Nov 2013 15:52:31 -0500 Subject: [PATCH] TR: Prevent internal error on `begin-for-syntax` Closes PR 13878 Please merge to v6.0 original commit: 9da8203c9c3a7c101360f57c6721f7f1a071ca91 --- .../typed-racket-lib/typed-racket/tc-setup.rkt | 6 ++++-- .../typed-racket/succeed/top-level-begin-for-syntax.rkt | 8 ++++++++ 2 files changed, 12 insertions(+), 2 deletions(-) create mode 100644 pkgs/typed-racket-pkgs/typed-racket-test/tests/typed-racket/succeed/top-level-begin-for-syntax.rkt diff --git a/pkgs/typed-racket-pkgs/typed-racket-lib/typed-racket/tc-setup.rkt b/pkgs/typed-racket-pkgs/typed-racket-lib/typed-racket/tc-setup.rkt index a3d6bd17..f7a95a4c 100644 --- a/pkgs/typed-racket-pkgs/typed-racket-lib/typed-racket/tc-setup.rkt +++ b/pkgs/typed-racket-pkgs/typed-racket-lib/typed-racket/tc-setup.rkt @@ -12,8 +12,10 @@ (provide tc-setup invis-kw maybe-optimize init-current-type-names) (define-syntax-class invis-kw - #:literals (define-values define-syntaxes #%require #%provide #%declare begin) - (pattern (~or define-values define-syntaxes #%require #%provide #%declare begin))) + #:literals (define-values define-syntaxes #%require + #%provide #%declare begin begin-for-syntax) + (pattern (~or define-values define-syntaxes #%require + #%provide #%declare begin begin-for-syntax))) (define (maybe-optimize body) ;; do we optimize? diff --git a/pkgs/typed-racket-pkgs/typed-racket-test/tests/typed-racket/succeed/top-level-begin-for-syntax.rkt b/pkgs/typed-racket-pkgs/typed-racket-test/tests/typed-racket/succeed/top-level-begin-for-syntax.rkt new file mode 100644 index 00000000..17e6a05f --- /dev/null +++ b/pkgs/typed-racket-pkgs/typed-racket-test/tests/typed-racket/succeed/top-level-begin-for-syntax.rkt @@ -0,0 +1,8 @@ +#lang racket/load + +;; Test for PR 13878, ensure that this doesn't produce +;; an internal type-checker error + +(require typed/racket) +(begin-for-syntax 3) +