diff --git a/pkgs/typed-racket-pkgs/typed-racket-lib/typed-racket/typecheck/tc-toplevel.rkt b/pkgs/typed-racket-pkgs/typed-racket-lib/typed-racket/typecheck/tc-toplevel.rkt index db884bfb..7571a9a9 100644 --- a/pkgs/typed-racket-pkgs/typed-racket-lib/typed-racket/typecheck/tc-toplevel.rkt +++ b/pkgs/typed-racket-pkgs/typed-racket-lib/typed-racket/typecheck/tc-toplevel.rkt @@ -236,6 +236,8 @@ (void)] ;; definitions just need to typecheck their bodies + [(define-values () expr) + (tc-expr/check #'expr (ret empty))] [(define-values (var ...) expr) (unless (for/and ([v (in-syntax #'(var ...))]) (free-id-table-ref unann-defs v (lambda _ #f))) diff --git a/pkgs/typed-racket-pkgs/typed-racket-test/tests/typed-racket/fail/define-zero-values.rkt b/pkgs/typed-racket-pkgs/typed-racket-test/tests/typed-racket/fail/define-zero-values.rkt new file mode 100644 index 00000000..8fd0b06f --- /dev/null +++ b/pkgs/typed-racket-pkgs/typed-racket-test/tests/typed-racket/fail/define-zero-values.rkt @@ -0,0 +1,3 @@ +#lang typed/racket + +(define-values () (+ 1 "x"))