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
Chicken-users@nongnu.org
http://lists.nongnu.org/mailman/listinfo/chicken-users

Reply via email to