Allow omitting type annotation on for/fold:.
original commit: 506980240a1b5f468ec32ad84ef54bac5089c879
This commit is contained in:
parent
95a11759c1
commit
d437c49ad9
|
@ -521,7 +521,6 @@ This file defines two sorts of primitives. All of them are provided into any mod
|
|||
(begin (define-syntax name (define-for-variant #'untyped-name)) ...))]))
|
||||
;; for/hash{,eq,eqv}:, for/vector:, for/flvector:, for/and:, for/first: and
|
||||
;; for/last:'s expansions can't currently be handled by the typechecker.
|
||||
;; They have been left out of the documentation.
|
||||
(define-for-variants
|
||||
(for/list: for/list)
|
||||
(for/hash: for/hash)
|
||||
|
@ -561,7 +560,17 @@ This file defines two sorts of primitives. All of them are provided into any mod
|
|||
(clause.expand ... ...)
|
||||
c ...))
|
||||
'type-ascription
|
||||
#'ty)]))
|
||||
#'ty)]
|
||||
[(_ ((var:annotated-name init:expr) ...)
|
||||
(clause:for-clause ...)
|
||||
c:expr ...)
|
||||
(syntax-property
|
||||
(quasisyntax/loc stx
|
||||
(for/fold ((var.ann-name init) ...)
|
||||
(clause.expand ... ...)
|
||||
c ...))
|
||||
'type-ascription
|
||||
#'(values var.ty ...))]))
|
||||
|
||||
(define-syntax (for*: stx)
|
||||
(syntax-parse stx #:literals (:)
|
||||
|
|
Loading…
Reference in New Issue
Block a user