(use lolevel) (define-record foo a b) (let [(afoo (make-foo 1 1))] (print (foo-a afoo)) ((foreign-lambda* void (((c-pointer number) a)) "*a=100;") (make-locative afoo 1)) (print "here") (print (foo-a afoo)) (print (foo-b afoo)) ) ;; Output ;; 1 ;; here ;; 1 ;; Segmentation fault