Merge rev 120 from Scheme 48 svn repo:
Modified: s48/tuebingen/trunk/scheme/rts/jar-defrecord.scm Log: Subject: Fix hygiene bug in DEFINE-RECORD-TYPE DEFINE-RECORD-TYPE would expand into the wrong thing if there was a field name identical to the name of the type that appears as a constructor argument; the constructor used that same name as a parameter, shadowing the name for the type. The fix was to rename those parameters before including them in the output.
This commit is contained in:
parent
e62510c4f1
commit
f28a5f7dbb
|
@ -46,9 +46,9 @@
|
|||
(%unspecific (r 'unspecific))
|
||||
(name (cadr e))
|
||||
(type (caddr e))
|
||||
(args (map car (cadddr e)))
|
||||
(args (map r (map car (cadddr e))))
|
||||
(arg-types (map cadr (cadddr e)))
|
||||
(fields (caddr (cddr e))))
|
||||
(fields (map r (caddr (cddr e)))))
|
||||
(define (mem? name list)
|
||||
(cond ((null? list) #f)
|
||||
((c name (car list)) #t)
|
||||
|
|
Loading…
Reference in New Issue