original commit: 66801dc24187b805fe1a19589c2094b63ea67918
This commit is contained in:
Matthew Flatt 1999-01-28 22:10:44 +00:00
parent 85ebc45526
commit 8e3d66a837
2 changed files with 15 additions and 7 deletions

View File

@ -13,7 +13,7 @@
(define (xu) (unit (import) (export))) (define (xu) (unit (import) (export)))
(define (xc) (class object% () (sequence (super-init)))) (define (xc) (class object% () (sequence (super-init))))
(init (let ()
(define-struct test (value constructor-sexp (define-struct test (value constructor-sexp
whole/frac-constructor-sexp whole/frac-constructor-sexp
shared-constructor-sexp shared-constructor-sexp
@ -179,8 +179,8 @@
xl-ID-BETTER-NOT-BE-DEFINED) xl-ID-BETTER-NOT-BE-DEFINED)
'(lambda () ...)) '(lambda () ...))
(make-same-test xc 'xc) (make-same-test xc 'xc)
(make-same-test (letrec ([xc (class '() ())]) xc) '(class ...)) (make-same-test (letrec ([xc (class object% ())]) xc) '(class ...))
(make-same-test (letrec ([xc-ID-BETTER-NOT-BE-DEFINED (class '() ())]) (make-same-test (letrec ([xc-ID-BETTER-NOT-BE-DEFINED (class object% ())])
xc-ID-BETTER-NOT-BE-DEFINED) xc-ID-BETTER-NOT-BE-DEFINED)
'(class ...)) '(class ...))
(make-same-test xu 'xu) (make-same-test xu 'xu)
@ -307,7 +307,7 @@
-0-)))) -0-))))
(for-each run-test tests)) (for-each run-test tests))
(begin (let ()
(define make-test-shared (define make-test-shared
(lambda (shared?) (lambda (shared?)
(lambda (object output) (lambda (object output)
@ -336,9 +336,9 @@
(test-not-shared 'x ''x) (test-not-shared 'x ''x)
(test-not-shared (lambda (x) x) '(lambda (a1) ...)) (test-not-shared (lambda (x) x) '(lambda (a1) ...))
(test-not-shared (make-promise (lambda () 1)) '(delay ...)) (test-not-shared (make-promise (lambda () 1)) '(delay ...))
(test-not-shared (class () ()) '(class ...)) (test-not-shared (class object% ()) '(class ...))
(test-not-shared (unit (import) (export)) '(unit ...)) (test-not-shared (unit (import) (export)) '(unit ...))
(test-not-shared (make-object (class () ())) '(make-object (class ...) ...)) (test-not-shared (make-object (class object% () (sequence (super-init)))) '(make-object (class ...) ...))
(test-shared "abc" "abc") (test-shared "abc" "abc")
(test-shared (list 1 2 3) '(list 1 2 3)) (test-shared (list 1 2 3) '(list 1 2 3))

View File

@ -445,6 +445,14 @@
(import) (import)
(export) (export)
(define define-values 10)))) (define define-values 10))))
(test 10 'invoke-w/shadowed
(let ([define-values 5])
(invoke-unit
(unit
(import)
(export)
(define define-values 10)
define-values))))
; Not ok if defining an imported name, but error should be about ; Not ok if defining an imported name, but error should be about
; redefining an imported name. (This behavior is not actually tested.) ; redefining an imported name. (This behavior is not actually tested.)