(,vector? . "vector")))
+;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; debug mem leaks
+(define gc-dumping #f)
(define gc-protect-stat-count 0)
(define-public (dump-gc-protects)
(set! gc-protect-stat-count (1+ gc-protect-stat-count))
".scm"))
(outfile (open-file out-file-name "w")))
+ (set! gc-dumping #t)
(display (format "Dumping GC statistics ~a...\n" out-file-name))
(display
(map (lambda (y)
'(protected-objects bytes-malloced cell-heap-size
)))
+
+ (set! gc-dumping #f)
))
))
(let* ((failed '())
+ (first #t)
(handler (lambda (key failed-file)
(set! failed (append (list failed-file) failed)))))
(for-each
(lambda (x)
+
+ ;; We don't carry info across file boundaries
+ (if first
+ (set! first #f)
+ (gc))
+
(lilypond-file handler x)
(ly:clear-anonymous-modules)
(if (ly:get-option 'debug-gc)