- May 05, 2012
-
-
Liam M. Healy authored
Fix an error in the recursive call in libffi-type-pointer for foreign-struct-type, now parse the slot-type, which is unparsed. This makes FSBV.3 and FSBV.4 succeed. Removed quote from test FSBV.2; this makes FSBV.2 succeed.
-
- May 04, 2012
-
-
Luís Oliveira authored
-
- May 03, 2012
-
-
Liam M. Healy authored
-
- May 01, 2012
-
-
Luís Oliveira authored
* Instead of a special variable, the parsed struct type instance is now annotated to let the type system know whether we're dealing with deprecated semantics (struct type canonicalizes to :pointer) or not. This approach should hopefully be much less error-prone. * Disabled translations for bare structs. * Fixed and commented out some bogus tests.
-
- Apr 14, 2012
-
-
Luís Oliveira authored
-
Luís Oliveira authored
-
Luís Oliveira authored
-
- Feb 12, 2012
-
-
Liam M. Healy authored
-
- Jan 10, 2012
-
-
Luís Oliveira authored
DEFCFUN.UNSIGNED-LONG-LONG fails on Allegro: lp#914500.
-
- Jan 07, 2012
-
-
Luís Oliveira authored
-
- Jan 06, 2012
-
-
Luís Oliveira authored
Fixes lp#911557. Reported by Elias Pipping. Solution courtesy of Daniel Herring.
-
- Oct 23, 2011
-
-
Liam M. Healy authored
Added test struct-values.translation.mem-aref.1 that creates an array of two struct-pairs, sets their values, then retrieves both pairs. This test fails: the returned first pair is actually the second, and the returned second pair is garbage. Repeating the same test gives different garbage. (with-foreign-object (p '(:struct struct-pair) 2) (setf (mem-aref p '(:struct struct-pair) 0) '(1 . 2) (mem-aref p '(:struct struct-pair) 1) '(3 . 4)) (values (mem-aref p '(:struct struct-pair) 0) (mem-aref p '(:struct struct-pair) 1))) (3 . 4) (213829 . 0) (with-foreign-object (p '(:struct struct-pair) 2) (setf (mem-aref p '(:struct struct-pair) 0) '(1 . 2) (mem-aref p '(:struct struct-pair) 1) '(3 . 4)) (values (mem-aref p '(:struct struct-pair) 0) (mem-aref p '(:struct struct-pair) 1))) (3 . 4) (425347 . 0)
-
Liam M. Healy authored
Add definition of C functions prodsumpair and doublepairdouble that take, and for the latter, return, the structure struct-pair+double (struct_pair_double) that has a structure struct-pair (struct_pair) in its slot 'pr. Two tests, fsbv.3 and fsbv.4, have been defined, and pass. Fixed argument to libffi-type-pointer call in libffi-type-pointer :around method so that these will work.
-
- Oct 22, 2011
-
-
Liam M. Healy authored
Add struct-pair+double recursive structure translation test, which passes when run individually in SBCL.
-
Liam M. Healy authored
Tests fsbv.1 and fsbv.2 added that test foreign structure call and return by value. This includes the C file and addition to makefile to generate the appropriate library, libfsbv. So that the tests are properly defined, load cffi-fsbv and then cffi-tests. Both tests should pass. The test returning a structure, fsbv.2, exposed an error in the form generated by ffcall-body-libffi; because it always generated a mem-aref on the return value, the subsequent translate-from-foreign was effectively making a double translation. Thus, this form generation has been conditionalized so that if translate-from-foreign will not be applied (e.g., built-in-type) to call mem-aref, otherwise just return the pointer.
-
- Oct 21, 2011
-
-
Liam M. Healy authored
Define a structure struct-pair-default-translate and test struct-values-default.translation.mem-ref.1 to test translation from foreign structure to plist. In order to make this work, rewrite mem-ref function to parallel exactly the mem-ref compiler macro, because conditionals were not correct.
-
- Oct 09, 2011
-
-
Liam M. Healy authored
Add :argument-precedence-order to defgenerics translate-into-foreign-memory and translate-to-foreign, and removed the 'cons specializer in the tests.
-
- Oct 06, 2011
-
-
Luís Oliveira authored
-
Luís Oliveira authored
Otherwise the default plist-handling method kicks in.
-
- Sep 18, 2011
-
-
Luís Oliveira authored
-
Luís Oliveira authored
Add respective struct tests, one of which fails. Also, missing union tests.
-
- Sep 11, 2011
-
-
Luís Oliveira authored
-
- Sep 10, 2011
-
-
Luís Oliveira authored
-
Luís Oliveira authored
Update STRUCT-VALUES.* tests.
-
Luís Oliveira authored
Said expansion breaks the protocol between TRANSLATE-TO-FOREIGN and FREE-TRANSLATED-OBJECT. This wasn't an issue when using EXPAND-TO-FOREIGN-DYN since it discards the default expansion of EXPAND-TO-FOREIGN. Only CONVERT-OBJECT-FOREIGN and DEFCALLBACK call EXPAND-TO-FOREIGN directly and the latter has to discard the second value anyway.
-
Luís Oliveira authored
All fail but STRUCT-VALUES.TRANSLATION.1.
-
- Sep 09, 2011
-
-
Luís Oliveira authored
-
- May 26, 2011
-
-
Luís Oliveira authored
As of OSX 10.6.6, loading things like CoreFoundation on something other than the initial thread results in a crash. Implemented workaround on SBCL based on what CCL does upstream. Other Lisps might benefit from similar workarounds.
-
- Apr 17, 2011
-
-
Luís Oliveira authored
-
Luís Oliveira authored
Patch courtesy of Greg Pfeil. Closes lp:622272.
-
- Jan 07, 2011
-
-
Luís Oliveira authored
- Added tests: FOREIGN-GLOBALS.UNDEFINED.1 and FOREIGN-GLOBALS.ERROR.1. - Check that FOREIGN-SYMBOL-POINTER's 'name' arg is a string.
-
- Sep 19, 2010
-
-
Stelian Ionescu authored
Add tests too
-
- Sep 09, 2010
-
-
Luís Oliveira authored
Patch courtesy of Dorian Taylor, lp#631972.
-
- Apr 28, 2010
-
-
Luís Oliveira authored
Patch courtesy of Juan Jose Garcia-Ripoll.
-
Luís Oliveira authored
Testing error situations for some pointer operations.
-
- Apr 25, 2010
-
-
Luís Oliveira authored
Patch courtesy of Juan Jose Garcia-Ripoll.
-
Luís Oliveira authored
- Fixes previous patch. - New test: WITH-FOREIGN-POINTER.CONSTANT-SIZE.
-
- Jan 01, 2010
-
-
Luís Oliveira authored
-
- Nov 24, 2009
-
-
Luís Oliveira authored
-
Luís Oliveira authored
-