Summary

Large / many constants cause segfaults

Metadata

Description

When compiling a Scheme program containing "many" constants that are reasonably large, the resulting binary will segfault.

 #!scm
 (use-for-syntax srfi-1)
 
 (define-syntax generate-literals
   (ir-macro-transformer
     (lambda (i r c)
      `(begin 
         ,@(list-tabulate
             1000
             (lambda (x) 
               `(define ,(gensym) (quote ,(make-vector 1000)))))))))
 
 (generate-literals)

This happens with vectors as well as lists (but not strings, because those are allocated statically with malloc())

Changes and comments

[2015-10-13 20:43:26 UTC] sjamaan wrote:

OK, looks like this is a size calculation problem in C_rereclaim2 (see chicken-hackers thread).

[2015-10-13 20:43:26 UTC] sjamaan wrote:

1444761816142159

[2015-10-13 21:00:04 UTC] sjamaan changed description

[2015-10-26 15:12:31 UTC] sjamaan changed status from new to closed

[2015-10-26 15:12:31 UTC] sjamaan set resolution to fixed

[2015-10-26 15:12:31 UTC] sjamaan wrote:

Fixed by b7510458def3b95ab4656a03640e39b6247b0672