(import chicken scheme foreign foreigners) #> typedef enum { Val1, Val2, Val3 } some_enum; void garmonbozia (some_enum * x) { printf("give me back my garmonbozia!\n"); } <# (define-foreign-type some-enum int) (define garmonbozia (foreign-lambda void garmonbozia (c-pointer some-enum))) ;;(foreign-code "some_enum* a; garmonbozia(a);")