[cffi-devel] Struct alignment/size bug fixed, win32 tweaks, etc..
Luis Oliveira
luismbo at gmail.com
Fri Sep 2 07:58:59 UTC 2005
Hello,
About the struct alignment issue, I found some docs here:
http://refspecs.freestandards.org/ and fixed the bug following the
instructions in "System V Application Binary Interface Intel386
Architecture Processor Supplment, Fourth Edition". According to the
other ABI docs under "Processor Specific ELF documents" the same rules
apply at least for x86-64, MIPS and PowerPC.
These documents mention System V, so I suppose it could be different
for other systems. I have tested this under Win32 and MacOS X (as well
as Linux) and they seem to use the same rules.
So anyway, these are the new changes in cffi-luis:
Fri Sep 2 08:57:50 WEST 2005 Luis Oliveira <loliveira at common-lisp.net>
* CFFI User Manual update.
Fri Sep 2 05:40:50 WEST 2005 Luis Oliveira <loliveira at common-lisp.net>
* Fix struct bug, defcvar bug and tweaked bindings.lisp
- defcvar now works (more) correctly with aggregate types.
- struct types now carry alignment information which is now
correctly calculated (for unions too) according to the x86
ABI (tested on darwin/ppc too, but should study other ABI
docs at some point).
- also tail padding is now correctly added to structs, when
necessary. (also according to the x86 ABI).
- 4 new tests for this struct bug (reported by Wilco Greven).
- tweaked tests/bindings.lisp to correctly load the library on
Lispworks and to make it more portable across win/nix/etc..
Thu Sep 1 08:36:04 WEST 2005 Luis Oliveira <loliveira at common-lisp.net>
* Slight change to defcenum to make Corman Lisp happier.
Wed Aug 31 07:46:45 WEST 2005 Luis Oliveira <loliveira at common-lisp.net>
* Well, lets support MINGW too.
Tweaked the Makefile a bit to support MINGW too.
Wed Aug 31 07:30:13 WEST 2005 Luis Oliveira <loliveira at common-lisp.net>
* Win32 tweaks to the test library...
... in order to work with the MSVC++ free toolkit.
- correctly load the test library.
- and __declspec(dllexport) to the test library functions
- implement a strdup, used in 2 tests
- added a compile.bat, the free toolkit doesn't seem to have
nmake. Also, I don't know how to make ASDF automatically
compile the lib under win32 like I did for *nix.
--
Luís Oliveira
http://student.dei.uc.pt/~lmoliv/
Equipa Portuguesa do Translation Project
http://www2.iro.umontreal.ca/~pinard/po/registry.cgi?team=pt
More information about the cffi-devel
mailing list