New tests from Richard's bug reports.
svn: r9700 original commit: a3d192bc51eb9a6af22492ee2a0db20131c07179
This commit is contained in:
parent
e4c4d15921
commit
d6b097e5b6
19
collects/tests/typed-scheme/fail/pr9053-fail.ss
Normal file
19
collects/tests/typed-scheme/fail/pr9053-fail.ss
Normal file
|
@ -0,0 +1,19 @@
|
|||
#;
|
||||
(exn-pred exn:fail:syntax?)
|
||||
#lang scheme/load
|
||||
|
||||
(module source scheme/base
|
||||
|
||||
(define-struct term (posn)) ;; lambda-calc term w/ srcloc info
|
||||
(define-struct (var term) (id))
|
||||
(define-struct (lam term) (arg body))
|
||||
(define-struct (app term) (rator rand))
|
||||
|
||||
(provide (all-defined-out)))
|
||||
|
||||
(module client typed-scheme
|
||||
|
||||
(require-typed-struct term ([posn : Number]) 'source)
|
||||
(require-typed-struct (var term) (
|
||||
[id : Symbol])
|
||||
'source))
|
|
@ -1,6 +1,6 @@
|
|||
#lang typed-scheme
|
||||
|
||||
(let ([x : (Boxof Number) (box 1)]) x)
|
||||
(let: ([x : (Boxof Number) (box 1)]) x)
|
||||
|
||||
(let ()
|
||||
(: x (Boxof Number))
|
||||
|
|
10
collects/tests/typed-scheme/succeed/pr9043.ss
Normal file
10
collects/tests/typed-scheme/succeed/pr9043.ss
Normal file
|
@ -0,0 +1,10 @@
|
|||
#lang scheme/load
|
||||
|
||||
(module foo scheme
|
||||
|
||||
(define-struct foo (x y))
|
||||
(provide (struct-out foo)))
|
||||
|
||||
(module client typed-scheme
|
||||
(require-typed-struct foo ([x : Number] [y : Symbol]) 'foo))
|
||||
|
11
collects/tests/typed-scheme/succeed/pr9046.ss
Normal file
11
collects/tests/typed-scheme/succeed/pr9046.ss
Normal file
|
@ -0,0 +1,11 @@
|
|||
#lang scheme/load
|
||||
|
||||
;; provide another source to import srcloc? to avoid
|
||||
;; collisions with the version from mzscheme.
|
||||
(module srcloc scheme/base
|
||||
|
||||
(provide (rename-out [srcloc? s:srcloc?])))
|
||||
|
||||
(module foo typed-scheme
|
||||
|
||||
(require/opaque-type Srcloc s:srcloc? 'srcloc))
|
14
collects/tests/typed-scheme/succeed/pr9048.ss
Normal file
14
collects/tests/typed-scheme/succeed/pr9048.ss
Normal file
|
@ -0,0 +1,14 @@
|
|||
#lang scheme/load
|
||||
|
||||
(module source mzscheme
|
||||
|
||||
(require (lib "contract.ss"))
|
||||
|
||||
(define-struct ast (loc))
|
||||
|
||||
(provide/contract (struct ast ([loc srcloc?])))
|
||||
)
|
||||
|
||||
(module client typed-scheme
|
||||
|
||||
(require-typed-struct ast ([loc : Any]) 'source))
|
17
collects/tests/typed-scheme/succeed/pr9053.ss
Normal file
17
collects/tests/typed-scheme/succeed/pr9053.ss
Normal file
|
@ -0,0 +1,17 @@
|
|||
#lang scheme/load
|
||||
|
||||
(module source scheme/base
|
||||
|
||||
(define-struct term (posn)) ;; lambda-calc term w/ srcloc info
|
||||
(define-struct (var term) (id))
|
||||
(define-struct (lam term) (arg body))
|
||||
(define-struct (app term) (rator rand))
|
||||
|
||||
(provide (all-defined-out)))
|
||||
|
||||
(module client typed-scheme
|
||||
|
||||
(require-typed-struct term ([posn : Number]) 'source)
|
||||
(require-typed-struct var (
|
||||
[id : Symbol])
|
||||
'source))
|
16
collects/tests/typed-scheme/succeed/pr9054.ss
Normal file
16
collects/tests/typed-scheme/succeed/pr9054.ss
Normal file
|
@ -0,0 +1,16 @@
|
|||
#lang scheme/load
|
||||
|
||||
(module source mzscheme
|
||||
|
||||
(define-struct term (posn)) ;; lambda-calc term w/ srcloc info
|
||||
(define-struct (var term) (id))
|
||||
(define-struct (lam term) (arg body))
|
||||
(define-struct (app term) (rator rand))
|
||||
|
||||
(provide (all-defined)))
|
||||
|
||||
(module alias typed-scheme
|
||||
|
||||
(define-type-alias Srcloc Any)
|
||||
|
||||
(require-typed-struct term ([posn : Srcloc]) 'source))
|
8
collects/tests/typed-scheme/succeed/richard-bugs.ss
Normal file
8
collects/tests/typed-scheme/succeed/richard-bugs.ss
Normal file
|
@ -0,0 +1,8 @@
|
|||
#lang typed-scheme
|
||||
|
||||
(: x : '())
|
||||
(define x '())
|
||||
|
||||
|
||||
(define-typed-struct even-struct ([x : (U #f odd-struct)]))
|
||||
(define-typed-struct odd-struct ([x : (U #f even-struct)]))
|
Loading…
Reference in New Issue
Block a user