racket/collects/tests/racket/place-struct-info.rkt
2012-11-01 07:19:53 -06:00

21 lines
516 B
Racket

#lang racket/base
(require racket/place)
;; Some results from `struct-type-info' may be created on demand.
;; Check that any sharing of `struct:exn' across places handles
;; that on-demand creation correctly.
(define (go)
(place
pch
(define-values (sym init auto ref set! imms par skip?)
(struct-type-info struct:exn))
(unless (procedure? ref)
(error "bad reference procedure"))
(collect-garbage)))
(module+ main
(void (place-wait (go)))
(collect-garbage)
(void (place-wait (go))))