You're absolutely right: enums are not generating any test for
validity. I would expect to see a C_i_foreign_integer_argumentp test
there. I don't know if this behaviour is intentional.
You could try this patch to Chicken, which adds a test for integer.
(Patch is against darcs HEAD but probably applicable to earlier.)
On 7/1/07, Ivan Raikov <[EMAIL PROTECTED]> wrote:
I accidentally discovered that the procedure blas:dgemm in the blas
egg causes a segmentation fault when called with a TRANSPOSE argument
that is a character, instead of one of the transpose constants. Is
this normal, or could it possibly be an indication of an issue with
the FFI interface?
--- old-chicken-darcs-ssh/support.scm 2007-07-02 00:31:21.000000000 -0500
+++ new-chicken-darcs-ssh/support.scm 2007-07-02 00:31:21.000000000 -0500
@@ -993,6 +993,8 @@
'#f) ) ) ]
[('nonnull-instance . _)
`(slot-ref ,param 'this) ]
+ [('enum . _)
+ (if unsafe param `(##sys#foreign-integer-argument
,param) ) ]
[('const t) (repeat t)]
[((or 'nonnull-pointer 'nonnull-c-pointer) . _)
`(##sys#foreign-pointer-argument ,param) ]
_______________________________________________
Chicken-users mailing list
[email protected]
http://lists.nongnu.org/mailman/listinfo/chicken-users