Skip to content

Commit b1f858f

Browse files
committed
make sure we gen the #self#
1 parent 68c1987 commit b1f858f

File tree

1 file changed

+4
-2
lines changed

1 file changed

+4
-2
lines changed

src/julia-syntax.scm

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -310,7 +310,10 @@
310310
(expr-contains-p (lambda (x) (and (pair? x) (eq? (car x) 'thisfunction))) expr))
311311

312312
(define (make-generator-function name sp-names arg-names body)
313-
(let ((arg-names (append sp-names arg-names)))
313+
(let ((arg-names (append sp-names
314+
(map (lambda (n)
315+
(if (eq? n '|#self#|) (gensy) n))
316+
arg-names))))
314317
(let ((body (insert-after-meta body ;; don't specialize on generator arguments
315318
;; arg-names slots start at 2 (after name)
316319
`((meta nospecialize ,@(map (lambda (idx) `(slot ,(+ idx 2))) (iota (length arg-names))))))))
@@ -1211,7 +1214,6 @@
12111214
(argl (car argl-stmts))
12121215
(name (check-dotop (car argl)))
12131216
(argname (if (overlay? name) (caddr name) name))
1214-
;;
12151217
;; fill in first (closure) argument
12161218
(adj-decl (lambda (n) (if (and (decl? n) (length= n 2))
12171219
`(|::| |#self#| ,(cadr n))

0 commit comments

Comments
 (0)