Help needed! I am trying to understand Gambit's C interface and I have this very simple code that crashes and have no clue why. Anyone has any idea? (Gambit 4.0.0) With this function defined in my gambcini : (define (C . rest) (let loop ((n (if (null? rest) 1 (car rest)))) (if (> n 0) (begin (write n) (newline) (compile-file "c") (load "c") (make-S2) (loop (- n 1)))))) I run (C 50) maybe a couple times and always end up getting a random crash often the first time File c.scm : (c-declare "struct S2_ { int x; int y; }; typedef struct S2_ S2;" ) (c-define-type S2 (type "S2")) (define make-S2 (c-lambda () S2 "___result_voidstar = calloc(1, sizeof(S2));"))