Wed Feb  1 22:40:58 VLAT 2006  [EMAIL PROTECTED]
  * Add check for FreeBSD and remove some redundant assignments.
New patches:

[Add check for FreeBSD and remove some redundant assignments.
[EMAIL PROTECTED] {
hunk ./tests/Makefile 30
+CC             := gcc
+CFLAGS         := -lm -Wall -std=c99 -pedantic
+SHLIB_CFLAGS   := -shared
+SHLIB_EXT      := .so
+
+ifneq ($(if $(findstring $(OSTYPE),Linux FreeBSD),OK), OK)
hunk ./tests/Makefile 37
-CC                := gcc
-CFLAGS            := -lm -Wall -std=c99 -pedantic
-SHLIB_CFLAGS      := -bundle
-SHLIB_EXT         := .so
-else
-ifeq ($(OSTYPE), Linux)
-CC                := gcc
-CFLAGS            := -lm -Wall -std=c99 -pedantic
-SHLIB_CFLAGS      := -shared
-SHLIB_EXT         := .so
+SHLIB_CFLAGS   := -bundle
hunk ./tests/Makefile 40
-CC                := gcc
-CFLAGS            := -c -Wall -std=c99 -pedantic
-SHLIB_CFLAGS      := -shared
-SHLIB_EXT         := .so
+CFLAGS         := -c -Wall -std=c99 -pedantic
hunk ./tests/Makefile 43
-CC                := gcc
-CFLAGS            := -lm -Wall -std=c99 -pedantic
-SHLIB_CFLAGS      := -shared
-SHLIB_EXT         := .dll 
+SHLIB_EXT      := .dll 
}

Context:

[Add option to defcenum
Luis Oliveira <[EMAIL PROTECTED]>**20060130174114
 
 New option to defcenum in order to be able a base type different
 from the default, :int.
] 
[Comment about why cffi-features:no-*
Luis Oliveira <[EMAIL PROTECTED]>**20060126041743] 
[Use l-t-v in lispworks's %foreign-funcall
Luis Oliveira <[EMAIL PROTECTED]>**20060126041652] 
[more doc changes; renamed features
Luis Oliveira <[EMAIL PROTECTED]>**20060125004215
 
 - change "docs" to be the default target in doc/Makefile.
 - add Stephen the list of authors in cffi-manual
 - rename "Index" to "Comprehensive Index" so that Index.html doesn't
   clash with index.html on OSX.
 - add varargs example for defcfun
 - rename features (again) foreign-funcall -> no-foreign-funcall,
   long-long -> no-long-long.
] 
[stabilize the last few doc changes
Stephen Compall <[EMAIL PROTECTED]>**20060124165502
 
 - display Luis's name with an accent
 - @sc the warranty
 - remove @code from section headings and @seealso
 - reword no-long-long note again
 - hey, define-foreign-library supports multiple libraries
 - clarify what *darwin-framework-directories* is actually used for
 - reorganize *foreign-library-directories* description
 - in gendocs.sh, fix libtool links as well
] 
[documentation changes
Luis Oliveira <[EMAIL PROTECTED]>**20060123165541
 
 - removed known issue about modern mode as it should work now.
 - removed note about callbacks being linux/x86 only.
 - fixed typo: supported -> unsupported.
 - remove note about [u]int{8,16,32,64} not being implemented.
 - add documentation about uint, uchar, ulong, ullong.
 - fix foreign-alloc's function signature.
 - update info regarding lispworks's new foreign-funcall.
 - add example for *darwin-framework-directories*.
 - fixed define-foreign-library's syntax.
 - comment out sentence about use-foreign-library setting the current
   foreign library as it doesn't do that yet.
 - remove the (setf (callback ...)) example. this isn't allowed anymore.
 - rename foreign-funcall and long-long to no-foreign-funcall and
   no-long-long. 
 - long-long is a standard C99 type, remove mention of GNU there.
 
 - removed TODO item: there's already a tutorial.
 - added TODO item: document defcfun's new capabilities
 
] 
[document new library interface, some other manual stuff
Stephen Compall <[EMAIL PROTECTED]>**20060123040605
 
 - New macro @Variable.
 - Fix 2 @end examples.
 - In "Arguments and Values" headings, use @var for tables of
   variables, as they act as metasyntactic variables in this situation.
 - Document new library interface.
 - Use @unnumberedsec in dictionary nodes instead of @heading, and
   @code the names.
 - Platform-specific features: new appendix.
 - define-curl-option-setter: curl-code is not a keyword
 - Use new @seealso macro for "See Also" xrefs.
 - Merge all indexes into cp.
] 
[update manual Introduction and Foreign types, texinfo idioms throughout
Stephen Compall <[EMAIL PROTECTED]>**20060119185920
 
 - Remove note on cffi-luis branch.
 - Write introductory chapter.
 - Acronym/sc-ify CL implementation names.
 - Use @cffi{} instead of CFFI.
 - Use @impnote for notes from luis and james.
 - Split existing type translator explanation to make "Defining
   typedefs" and rewrite the former.
 - Invent an example for defcstruct, and explain its limitations.
 - Write "Allocating Foreign Objects".
 - Move with-foreign-object(s) to Pointers chapter, to group it with
   foreign-alloc.
 - Use @sc and @result to make REPL examples pretty, and move them into
   @example sections.
 - Remove commented-out sections; they can be readded later from darcs
   repo if need be.
] 
[New TODO items.
Luis Oliveira <[EMAIL PROTECTED]>**20060121034720
 
 - Underspecifed Semantics: doubles/floats
 - Known Issues: cffi-tests.asd's bogus :c-test-lib
] 
[Fix foreign-funcall sprintf tests' return types.
Luis Oliveira <[EMAIL PROTECTED]>**20060121033819] 
[Do argument promotion on variadic functions
Luis Oliveira <[EMAIL PROTECTED]>**20060121033736
 
 - New macro foreign-funcall-varargs that does argument promotion.
 - Make defcfun use this when &rest is used.
 - New tests: DEFCFUN.VARARGS.{CHAR,SHORT,INT,LONG,FLOAT,DOUBLE,STRING}.
] 
[Fix override in clisp's %foreign-type-alignment
Luis Oliveira <[EMAIL PROTECTED]>**20060121032350] 
[%foreign-funcall-pointer/clisp: constant fold with load-time-value
Joerg-Cyril Hoehle <[EMAIL PROTECTED]>**20060121032336] 
[register-callback clisp: use only ffi:exported functions
Joerg-Cyril Hoehle <[EMAIL PROTECTED]>**20060121032249] 
["added one declare ignore"
Joerg-Cyril Hoehle <[EMAIL PROTECTED]>**20060116143820] 
[Signal an error when defcstruct/defcunion is passed a :void
Luis Oliveira <[EMAIL PROTECTED]>**20060121030713] 
[Fix bug in Lispworks's %%foreign-funcall
Luis Oliveira <[EMAIL PROTECTED]>**20060121025557] 
[point libc manual refs to gnu.org
Stephen Compall <[EMAIL PROTECTED]>**20060118192501
 
 - In doc/gendocs.sh, HTML files are now modified with sed to point to
   the glibc manual hosted on gnu.org whenever a link to that manual
   appears.
] 
[New test: FUNCALL.INT.2
Luis Oliveira <[EMAIL PROTECTED]>**20060117225544] 
[FOREIGN-FUNCALL(-POINTER) support for Lispworks
Luis Oliveira <[EMAIL PROTECTED]>**20060117013113
 
 Implementation %foreign-funcall and %foreign-funcall-pointer
 in cffi-lispworks by creating and caching one foreign funcallable
 per function signature at macroexpansion-time.
   
 Patch courtesy of Edi Weitz <edi at agharta dot de>
] 
[Fix bug in default-library-suffix
Luis Oliveira <[EMAIL PROTECTED]>**20060117005805] 
[tests: explicitly load msvcrt.dll on sbcl/win32
Luis Oliveira <[EMAIL PROTECTED]>**20060116175903] 
[varargs support in defcfun
Luis Oliveira <[EMAIL PROTECTED]>**20060116175753
 
 For now this is in DEFCFUN itself. Not sure yet if this should be moved
 to a DEFCFUN-VARARGS or something similar.
] 
[Fix bug in libaries.lisp
Luis Oliveira <[EMAIL PROTECTED]>**20060115011033
 
 try-foreign-library-alternatives and load-foreign-library-name
 were shadowing %load-foreign-library's return value and returning
 nil even when a library was successfully loaded.
 
 Bug reported by Stephen Compall and Edi Weitz.
] 
[Lispworks: fix override in %foreign-type-alignment
Luis Oliveira <[EMAIL PROTECTED]>**20060115010647
 
 Oversight when :ppc32 was renamed to cffi-features:ppc32.
] 
[untabify a few files
James Bielman  <[EMAIL PROTECTED]>**20060114093347] 
[Documentation changes
Luis Oliveira <[EMAIL PROTECTED]>**20060112185201
 
 - Add some comments about define-foreign-library's new features. The
   t clause and :default.
 - Remove (setf get-callback) from the documentation.
] 
[Massage doc/colorize-lisp-examples.lisp a bit
Luis Oliveira <[EMAIL PROTECTED]>**20060111213859
 
 - Small hack to colorize-lisp-examples to make it treat "smalllisp"
   blocks like the normal "lisp" code blocks.
] 
[Import the tutorial
Stephen Compall <[EMAIL PROTECTED]>**20060111183840
 
 - "An Introduction to Foreign Interfaces and CFFI" added to manual.
] 
[fix load-foreign-library bug
Luis Oliveira <[EMAIL PROTECTED]>**20060111162918
 
 When loading a library defined with DEFINE-FOREIGN-LIBRARY, it was
 processing all the clauses that returned true instead of only the
 first.
 
 Thanks to Stephen Compall for the bug report.
] 
[fix DISCARD-DOCSTRING to not treat a singleton string as a docstring
James Bielman  <[EMAIL PROTECTED]>**20060110135750
 
 - Callback bodies consisting of only one string literal were treated
   as docstrings instead of being returned.
 - Added a test case in callbacks.lisp for this.
   
 Thanks to ignas on #lisp for the bug report.
] 
[update uffi-compat to new translator interface
James Bielman  <[EMAIL PROTECTED]>**20060109074053
 
 Patch courtesy of: Robert J. Macomber <xbxyh8 at rojoma.com>
] 
[add :default expression to auto-append library suffixes
James Bielman  <[EMAIL PROTECTED]>**20060107061526] 
[allow t in library feature expression as default
James Bielman  <[EMAIL PROTECTED]>**20060107061452] 
[remove some finished items from the TODO list
James Bielman  <[EMAIL PROTECTED]>**20060107110558] 
[signal an error when trying to load undefined "logical" foreign libraries
James Bielman  <[EMAIL PROTECTED]>**20060107053455] 
[implement new callback interface for corman
James Bielman  <[EMAIL PROTECTED]>**20060106050325] 
[implement new callback interface for ecl
James Bielman  <[EMAIL PROTECTED]>**20060106050125
 
 Untested: the ECL backend does not seem to build for me.
] 
[implement new callback interface for cmucl
James Bielman  <[EMAIL PROTECTED]>**20060106045753
 
 Unsolved problems still prevent CFFI from working in a saved image
 on CMU CL.
] 
[implement new callback interface for lispworks
James Bielman  <[EMAIL PROTECTED]>**20060106034217] 
[fix callbacks in saved images in clisp, sbcl, allegro, and openmcl
James Bielman  <[EMAIL PROTECTED]>**20060106030839] 
[New types. Sized ints and aliases.
Luis Oliveira <[EMAIL PROTECTED]>**20060107031709
 
 - Defined the :[u]int{8,16,32,64} types by looking at the sizes of
   the built-in types.
 - Removed :[u]int{8,16,32,64} from cffi-clisp.
 - New typedefs: :uchar, :ushort, :uint, :ulong, :llong, and :ullong.
 - New test: misc-types.sized-ints.
 - Removed the related TODO items.
] 
[Substitute missing ensure-string.
Luis Oliveira <[EMAIL PROTECTED]>**20060107021835] 
[Remove the TODO item related to load-foreign-library
Luis Oliveira <[EMAIL PROTECTED]>**20060107021348] 
[%foreign-funcall-pointer for ECL
Luis Oliveira <[EMAIL PROTECTED]>**20060107021126] 
[Remove old comments in cffi-clisp and cffi-sbcl
Luis Oliveira <[EMAIL PROTECTED]>**20060107021001] 
[Foreign library changes
Luis Oliveira <[EMAIL PROTECTED]>**20060107020805
 
 - Fix loading of foreign libraries in cffi-allegro. Now tries to load
   whatever is passed to %load-foreign-library instead of refusing to 
   load files with types that aren't in excl::*load-foreign-types*.
 - Changes to %close-foreign-library in CMUCL and SBCL. Use string=
   instead of string-equal to match libraries.
 - Lispworks: use :connection-style :immediate in %load-foreign-library.
 - New foreign library interface.
] 
[Pushing cffi-features symbols to *features*
Luis Oliveira <[EMAIL PROTECTED]>**20060107015644
 
 - Renamed :cffi/no-foreign-funcall and :cffi/no-long-long to
   cffi-features:foreign-funcall and cffi-features:long-long respectively
   (with the opposite meanings of course).
 - Also new features (in the cffi-features package): darwin, unix, windows,
   ppc32 and x86. More could be added. The cffi-sys backends are
   responsible for pushing these features.
] 
[New TODO item about CLISP fasl portability
Luis Oliveira <[EMAIL PROTECTED]>**20060107015454] 
[add :size option to defcunion as with defcstruct
James Bielman  <[EMAIL PROTECTED]>**20060106082957] 
[add todo list entry about setting union size
James Bielman  <[EMAIL PROTECTED]>**20060106074708] 
[add todo list entry about implementing :uint8 and friends
James Bielman  <[EMAIL PROTECTED]>**20060105091444] 
[gensym name and typo fixes
James Bielman  <[EMAIL PROTECTED]>**20060103202816] 
[ffi:with-c-var's symbol-macrolet repeatedly applies foreign-value, avoid it
Joerg-Cyril Hoehle <[EMAIL PROTECTED]>**20060103153551] 
[TODO: foreign-alloc needs testcases
Joerg-Cyril Hoehle <[EMAIL PROTECTED]>**20060103153527] 
[with-foreign-pointer [cmucl,sbcl]: forgot one instance of EVAL (constantp case)
Joerg-Cyril Hoehle <[EMAIL PROTECTED]>**20060102152957] 
[clisp defcallback: free unless invalid (possibly from old image)
Joerg-Cyril Hoehle <[EMAIL PROTECTED]>**20060102152202] 
[document new type translator interface in the manual
James Bielman  <[EMAIL PROTECTED]>**20060103092448] 
[ramble a bit in comments about the new interface
James Bielman  <[EMAIL PROTECTED]>**20060101100935] 
[ignore NAME in :wrapper UNPARSE method
James Bielman  <[EMAIL PROTECTED]>**20060101093154] 
[properly handle alloc param chain for typedef translators
James Bielman  <[EMAIL PROTECTED]>**20060101093028] 
[remove DEFINE-TYPE-TRANSLATOR from package exports
James Bielman  <[EMAIL PROTECTED]>**20060101091727] 
[new translator GF protocol, as discussed in IRC
James Bielman  <[EMAIL PROTECTED]>**20060101091535] 
[fix missing newline issues
James Bielman  <[EMAIL PROTECTED]>**20060101043915] 
[remove obsolete comment in MAKE-LOAD-FORM method
James Bielman  <[EMAIL PROTECTED]>**20051228174102] 
[new file, translator example
James Bielman  <[EMAIL PROTECTED]>**20051228173014] 
[new translator interface updates
James Bielman  <[EMAIL PROTECTED]>**20051228172421
 
 - Add UNPARSE generic function for unparsing types.
 - Reverse the order of the type name and class in translator GFs.
 - Add NEXT-* versions of the translator GFs.
 
] 
[fix unused variable warnings
James Bielman  <[EMAIL PROTECTED]>**20051223195348] 
[specify :argument-precedence-order for translator generics
James Bielman  <[EMAIL PROTECTED]>**20051223195127] 
[new type translator implementation
James Bielman  <[EMAIL PROTECTED]>**20051223194115] 
[load-foreign-library changes
Luis Oliveira <[EMAIL PROTECTED]>**20060103004525
 
 - Pass :foreign t to LOAD on Allegro.
 - Use sys::load-object-file on CMUCL.
] 
[support Allegro CL and CLISP modern modes
James Bielman  <[EMAIL PROTECTED]>**20051230233959] 
[Fix more typos in cffi-manual.
Luis Oliveira <[EMAIL PROTECTED]>**20051230215218] 
[Fix foreign-free example in the documentation.
Luis Oliveira <[EMAIL PROTECTED]>**20051230121846] 
[add scripts/ directory and release script
James Bielman  <[EMAIL PROTECTED]>**20051230081818] 
[Fix the struct.names test and update some CLISP comments.
Luis Oliveira <[EMAIL PROTECTED]>**20051230074303] 
[Document FOREIGN-SLOT-NAMES and FOREIGN-SLOT-OFFSET.
Luis Oliveira <[EMAIL PROTECTED]>**20051228235427] 
[FOREIGN-SLOT-NAMES and FOREIGN-SLOT-OFFSET
Luis Oliveira <[EMAIL PROTECTED]>**20051228195843
 
 - New functions: FOREIGN-SLOT-NAMES and FOREIGN-SLOT-OFFSET.
 - Test FOREIGN-SLOT-NAMES: STRUCT.NAMES
 - Removed respective TODO item and added a new one: document these.
] 
[Add some links to the TODO file.
Luis Oliveira <[EMAIL PROTECTED]>**20051228151536] 
[New TODO list and updated README.
Luis Oliveira <[EMAIL PROTECTED]>**20051228150424
 
 - New file: TODO. 46 items!
 - Removed the outdated paragraph about implementation support from
   the README file.
] 
[Fix compiler macros on foreign-slot-value/set
Luis Oliveira <[EMAIL PROTECTED]>**20051227154753
 
 - foreign-struct-slot-value-form and foreign-struct-slot-set-form
   were not quoting the type in the resulting mem-ref form.
 - struct.5, regression test.
] 
[cffi-uffi-compat:allocate-foreign-object optimization
Luis Oliveira <[EMAIL PROTECTED]>**20051226135806
 
 Convert TYPE to the equivalent UFFI type at macro-expansion time
 when constant.
] 
[Don't save (anonymous) parsed types in *foreign-types*
Luis Oliveira <[EMAIL PROTECTED]>**20051226135322
 
 Don't save parsed types in the *foreign-types* hashtable. This
 way they can be garbage collected and the hashtable won't grow
 indefinitely.
 
 Issue reported by Novikov Leonid <ln (at) bk.ru>
] 
[remove bogus extra right parenthesis
James Bielman  <[EMAIL PROTECTED]>**20051223153500] 
[pull out and improve some cffi examples
James Bielman  <[EMAIL PROTECTED]>**20051223144749] 
[define type translators at compile time
James Bielman  <[EMAIL PROTECTED]>**20051223144701] 
[clisp %mem-set use unexported ffi::stuff to enforce left-to-right evaluation
Joerg-Cyril Hoehle <[EMAIL PROTECTED]>**20051223135321] 
[more tests: verify left to right evaluation rule
Joerg-Cyril Hoehle <[EMAIL PROTECTED]>**20051223131408] 
[precision of wording (offset in bytes) & typo
Joerg-Cyril Hoehle <[EMAIL PROTECTED]>**20051223131305] 
[clisp: (setf %mem-ref) is gone, optimize %mem-set
Joerg-Cyril Hoehle <[EMAIL PROTECTED]>**20051223123712] 
[with-foreign-object: optimize constant type case + use eval
Joerg-Cyril Hoehle <[EMAIL PROTECTED]>**20051223123549] 
[inform rt of expected test failures under openmcl
James Bielman  <[EMAIL PROTECTED]>**20051223113330] 
[macrology to OAOO definition of %MEM-REF and %MEM-SET
James Bielman  <[EMAIL PROTECTED]>**20051223113523] 
[export %MEM-SET from cffi-sys and use instead of (SETF %MEM-REF)
James Bielman  <[EMAIL PROTECTED]>**20051223110805] 
[uffi-compat optimization on deref-array
Luis Oliveira <[EMAIL PROTECTED]>**20051223091203
 
 Determine the element type at macro-expansion time when
 the array type is constant.
] 
[Free old callbacks on clisp.
Luis Oliveira <[EMAIL PROTECTED]>**20051223091139] 
[Revert brainfart. What missing value?
Luis Oliveira <[EMAIL PROTECTED]>**20051223102106] 
[Fix conflict and missing "value". Oops.
Luis Oliveira <[EMAIL PROTECTED]>**20051223101748] 
[fix foreign-struct-set-form & enable foreign-slot-set optimization
Joerg-Cyril Hoehle <[EMAIL PROTECTED]>**20051222151302] 
[clisp: inline %mem-ref when given constant type
Joerg-Cyril Hoehle <[EMAIL PROTECTED]>**20051222141931] 
[fix foreign-struct-*-form thus enable foreign-slot-value optimization
Joerg-Cyril Hoehle <[EMAIL PROTECTED]>**20051222141506] 
[fix bugs in example implementation of mem-vector functions
James Bielman <[EMAIL PROTECTED]>**20051223014350] 
[Push :cffi to *features*
Luis Oliveira <[EMAIL PROTECTED]>**20051222193904] 
[Make defcfun accept a docstring
Luis Oliveira <[EMAIL PROTECTED]>**20051222170147] 
[Fix indentation.
Luis Oliveira <[EMAIL PROTECTED]>**20051222162055] 
[Add background info on free'ing callbacks
Joerg-Cyril Hoehle <[EMAIL PROTECTED]>**20051220111627] 
[cffi-clisp:%defcallback: simplify it
Joerg-Cyril Hoehle <[EMAIL PROTECTED]>**20051215085649] 
[foreign-slot-value|set compiler-macro update
Joerg-Cyril Hoehle <[EMAIL PROTECTED]>**20051214133908] 
[use ffi:foreign-variable in foreign-symbol-pointer
Joerg-Cyril Hoehle <[EMAIL PROTECTED]>**20051214133725] 
[ffi:memory-as is a perfect match for %mem-ref
Joerg-Cyril Hoehle <[EMAIL PROTECTED]>**20051209172237] 
[Make typedefs for structs work.
Luis Oliveira <[EMAIL PROTECTED]>**20051221170235
 
 - Make get-slot-info (and thus foreign-slot-value) work on typedefs
   to a struct type.
 - Regression test: STRUCT.4
] 
[Use fli:make-pointer instead of fli:*null-pointer*
Luis Oliveira <[EMAIL PROTECTED]>**20051221105427
 
 Use FLI:MAKE-POINTER here instead of FLI:*NULL-POINTER* for
 implementing CFFI-SYS:NULL-POINTER since old versions of
 Lispworks don't seem to have the latter.
 
 Patch courtesy of: Vebjorn Ljosa <vebjorn(@)ljosa.com>
] 
[CFFI-SYS-SPEC manual updates & Texinfo idioms
Luis Oliveira <[EMAIL PROTECTED]>**20051220043849
   
 Patch from: Stephen Compall <[EMAIL PROTECTED]>
   
 - Use @var for arguments, rather than @code.
 - Use @deftpx for a chain of type defns, rather than repeated @deftp
   blocks.
 - Use @result{} instead of explicit =>.
 - Use @r with appropriate formatting for comments in
   @examples/@lisps. [didn't apply these changes since they didn't
   play well with the colorize script in the HTML output --luis]
 - Introduction: Convert naming convention to a list of general
   conventions, and define "foreign type".
 - Rename the pointer functions.
 - Document new functions.
 - Use new @impnote macro to add notes, so they can be conditionally
   removed from the manual.
] 
[Forgot to export %close-foreign-library from cffi-lispworks.lisp
Luis Oliveira <[EMAIL PROTECTED]>**20051220035858] 
[Untabify cffi-ecl.lisp
Luis Oliveira <[EMAIL PROTECTED]>**20051215154526] 
[Preliminary support for close-foreign-library
Luis Oliveira <[EMAIL PROTECTED]>**20051215095834
 
 Unimplemented for ECL and Corman. Lously implemented in CMUCL (and possibly
 in the other ports too). Not exported.
] 
[Fix parsing of types to match UFFI's behaviour
Luis Oliveira <[EMAIL PROTECTED]>**20051214110839
 
 Basically, extra quoting is supposed to be ignored.
 Thus 'foo, ''foo, '''foo, are all valid types.
] 
[Bug fixes
Luis Oliveira <[EMAIL PROTECTED]>**20051212053739
 
 - WITH-FOREIGN-OBJECT should eval the type parameter. Fixed this
   as well as the examples and tests that assumed it wasn't evaluated.
 - document WITH-FOREIGN-OBJECT in the manual.
 - removed the pseudo ability to specialize arguments on
   define-type-translator. That didn't quite work, doh.
 - removed dead code from cffi-uffi-compat::foreign-type-size
   specialized on the uffi-array-type.
 - uffi-compat: parse (:array <type>) as (:array <type> 1)
 - uffi-compat: reflect the fact that CFFI:WITH-FOREIGN-OBJECT now
   evaluates the type parameter.
] 
[Fix uffi-compat wrt to the ptr->pointer changes
Luis Oliveira <[EMAIL PROTECTED]>**20051211100102] 
[Added GETENV to uffi-compat
Luis Oliveira <[EMAIL PROTECTED]>**20051211064557] 
[Oops
Luis Oliveira <[EMAIL PROTECTED]>**20051211053118
 
 - Missing comma in define-type-translator.
 - Also, it almost but not quite accepted the method specifiers. Fixed.
] 
[Type translation refactoring
Luis Oliveira <[EMAIL PROTECTED]>**20051211052201
 
 - Refactoring of the type translation mechanism, now based on
   generic functions. The only user-visible changes is that you can
   now specialize the on the argument of the translator, and there's
   no type argument now (which was useless too for user-defined types).
 - Don't export define-type-spec-parser since it's useless on its own.
 - The anonymous :enum type is gone.
 - Updated manual.
] 
[Update manual: CMUCL passes all tests.
Luis Oliveira <[EMAIL PROTECTED]>**20051209053051] 
[Lots of renaming and 2 new functions
Luis Oliveira <[EMAIL PROTECTED]>**20051209022821
 
 - Renamed: null-ptr -> null-pointer, null-ptr-p -> null-pointer,
   inc-ptr -> inc-pointer, with-foreign-ptr -> with-foreign-pointer,
   with-foreign-ptr-as-string -> with-foreign-pointer-as-string,
   foreign-slot-address -> foreign-slot-pointer, 
   get-var-ptr -> get-var-pointer and
   foreign-symbol-ptr -> foreign-symbol-pointer.
 - Updated various references to the old names in the cffi code itself,
   examples, tests and the manual.
 - New functions: cffi(-sys):pointer-address and cffi(-sys):make-pointer.
 - Use these in uffi-compat.
 - Documented them in the manual.
 - New tests: POINTER.1 and POINTER.2
] 
[Remove objects.lisp (new file: late-types.lisp)
Luis Oliveira <[EMAIL PROTECTED]>**20051208065807] 
[defcunion :count option for slots
Luis Oliveira <[EMAIL PROTECTED]>**20051208063412
 
 - Make the defcunion slots' count option be a keyword
 like defcstruct. Fix the related docs and tests.
] 
[Apply translations for simple slots.
Luis Oliveira <[EMAIL PROTECTED]>**20051205014628
 
 - Make the foreign-slot-value method on simple-struct-slot apply the
   adequate type translator. Same thing for the setter.
 - Test this in STRUCT.STRING.1 and STRUCT.STRING.2
] 
[Missing changes in last patch...
Luis Oliveira <[EMAIL PROTECTED]>**20051203034826] 
[Documention changes
Luis Oliveira <[EMAIL PROTECTED]>**20051203011223
 
 - commented out some example structures that use unimplemented features.
 - documented the recent DEFCSTRUCT changes; added related example.
 - mention that lisps that don't support FOREIGN-FUNCALL support
   DEFCFUN anyway.
 - new example with FOREIGN-FUNCALL
 - fix the comments in types.lisp about ABIs.
 - (non doc related) make cffi-tests :use REGRESSION-TEST instead of RT.
] 
[makefiles, defcstruct, foreign-string-alloc/with-foreign-string
Luis Oliveira <[EMAIL PROTECTED]>**20051202075637
 
 - Use variables for the lisps' paths so that one can easily pick
   different versions to run the tests with. eg:
     CMUCL=/path/to/lisp make test-cmucl
 - FOREIGN-STRING-ALLOC and WITH-FOREIGN-STRING: check if what we're
   passing as a string is actually a string. This avoids
   (foreign-string-alloc nil) => <pointer to empty C string>
 - DEFCSTRUCT now takes an optional :size option and each slot takes
   an optional :offset parameter that overrides the normal offset. This
   enables partial definitions of C structs. 
 - The previous change forces to make the COUNT option for the slots
   to be a keyword option. Update the examples accordingly.
 - tests/Makefile: support for SunOS. 
] 
[add and export WITH-FOREIGN-STRINGS to uffi-compat
James Bielman <[EMAIL PROTECTED]>**20051115022728] 
[darwin/ppc32 ABI structure alignment
Luis Oliveira <[EMAIL PROTECTED]>**20051114194120
 
 - Normalize the different implementation features (:powerpc, :macos,
   :macosx32) into :ppc32 and :darwin.
 - Force Allegro, CLISP, Lispworks, SBCLto return 8 as :double's
   alignment on darwin/ppc32
 - Correctly calculate alignments for darwin/ppc32's strange ABI.
 - New tests: STRUCT.ALIGNMENT.[567].
] 
[Manual: OpenMCL fails FOREIGN-GLOBALS.SET.LONG-LONG
Luis Oliveira <[EMAIL PROTECTED]>**20051104232143] 
[New test foreign-globals.set.long-long
Luis Oliveira <[EMAIL PROTECTED]>**20051104230305] 
[Add missing information about SBCL on linux/ppc
Luis Oliveira <[EMAIL PROTECTED]>**20051104202843] 
[Add information about linux/ppc to the manual.
Luis Oliveira <[EMAIL PROTECTED]>**20051104200531] 
[pointer-address was exported twice from cffi-uffi-compatt
Luis Oliveira <[EMAIL PROTECTED]>**20051104121605] 
[uffi-compat fixes
Luis Oliveira <[EMAIL PROTECTED]>**20051104101358
 
 - Implement uffi:make-pointer and export uffi:pointer-address.
] 
[Export foreign-library-types from cffi-uffi-compat
Luis Oliveira <[EMAIL PROTECTED]>**20051103133245] 
[Support for the (unsigned) long long type.
Luis Oliveira <[EMAIL PROTECTED]>**20051102203613
 
 - New CFFI primitive types :unsigned-long-long and :long-long.
 - Implemented in the following backends: OpenMCL, SBCL and CMUCL.
 - Implementations that don't support long long push :cffi/no-long-long
   into *features*: Allegro, CLISP, Corman, ECL and Lispworks.
 - New tests: FOREIGN-GLOBALS.REF.LONG-LONG, 
   FOREIGN-GLOBALS.REF.UNSIGNED-LONG-LONG, FUNCALL.LONG-LONG,
   CALLBACKS.LONG-LONG, CALLBACKS.UNSIGNED-LONG-LONG and DEFCFUN.LONG-LONG.
 - libtest.c is now compiled with -std=c99 instead of -ansi.
 - Add information about the new type in the manual and Mention known
   issues in the various implementations.
] 
[Light reformating of the ECL changes to fit 80 columns.
Luis Oliveira <[EMAIL PROTECTED]>**20051102153416] 
[New chapter: Implementation support and known issues.
Luis Oliveira <[EMAIL PROTECTED]>**20051102153220] 
[Updated ECL support
Luis Oliveira <[EMAIL PROTECTED]>**20051027143948
 
 - Updated cffi-ecl.lisp, courtesy of Michael Goffioul.
   (Includes some ECL specific workarounds in the portable
    bits of CFFI.)
] 
[Fix memory leak in test FOREIGN-GLOBALS.REF.STRING
Luis Oliveira <[EMAIL PROTECTED]>**20051027142855] 
[Makefile tweak for 64-bit platforms
Luis Oliveira <[EMAIL PROTECTED]>**20051011123357
 
 - x86-64 support courtesy Juho Snellman.
 - G5 support courtesy Bryan O'Connor.
] 
[cffi-openmcl 64-bit patches
Luis Oliveira <[EMAIL PROTECTED]>**20051007003251
 
 - Port to openmcl darwin/ppc64, courtesy Gary Byers.
] 
[64-bit enhancements for OpenMCL
Luis Oliveira <[EMAIL PROTECTED]>**20051006001347
 
 - Use the :int instead of :signed-fullword, etc..
] 
[Fixed bug in uffi-compat, added new type.
Luis Oliveira <[EMAIL PROTECTED]>**20051003142016
 
 - make the uffi-array-type be aggregate. (hopefully this didn't break
   uses of this type in other situations)
 - add uffi's :struct-pointer type. (not well tested, but passes all
   tests from uffi's regression suite) 
] 
[pointer-eq and bug fixes
Luis Oliveira <[EMAIL PROTECTED]>**20051002122416
 
 - New CFFI-SYS primitive: POINTER-EQ. Implemented for all Lisps except
   ECL and GCL. Exported it from the CFFI package.
 - Added POINTER-EQ to the user manual.
 - Bug fix: dereferencing an aggregate type should return a pointer to
   it, not dereference it as a :pointer.
 - Bug fix: mem-aref setf expander was returning a bogus getter (mem-ref
   instead of mem-aref).
 - Two regressions tests for the bugs above: DEREF.AGGREGATE and
   DEREF.ARRAY-OF-AGGREGATES.
] 
[New test: void callback
Luis Oliveira <[EMAIL PROTECTED]>**20050926234141] 
[Fixed bogus getters in setf expanders.
Luis Oliveira <[EMAIL PROTECTED]>**20050925193602
 
 Bug report and initial bugfixes courtesy of Marco Gidde.
 
 - fixed setf expanders for mem-ref, mem-aref, and foreign-slot-value.
   (also mem-aref was evaluating the type argument twice)
 - likewise fixed cmucl's, openmcl's and sbcl's setf expanders for %mem-ref.
 - regression tests: mem-aref.eval-type-x2, mem-ref.nested, mem-aref.nested
   and struct.nested-setf.  
] 
[load-foreign-library
Luis Oliveira <[EMAIL PROTECTED]>**20050925044242
 
 - extend load-foreign-library to accept a pathname as an argument.
 - change tests/bindings.lisp to pass a pathname.
] 
[foreign-symbol-ptr and defcvar, etc..
Luis Oliveira <[EMAIL PROTECTED]>**20050924201305
 
 - defcvar's expansion will now lookup the foreign symbol at runtime.
   get-var-ptr too.
 - Changed a few implementations to return NIL when foreign symbol
   doesn't exist (instead of, say, raising an error): clisp, cmucl,
   lispworks and sbcl.
 - Exported foreign-symbol-ptr from the CFFI package and added it to
   the user manual.
 - Also added missing word to foreign-free's description.
 - Fixed typo in cffi-corman-lisp.
] 
[Support for my asdf setup.
Luis Oliveira <[EMAIL PROTECTED]>**20050924200146
 
 Well, support for asdf setups that don't put fasl files next to
 the source files. The Makefile will delete the .fasls directories
 on make clean (that's where my setup puts the fasls) and bindings.lisp
 will save the shared library's location at compile-time.
] 
[foreign-symbol-ptr
Luis Oliveira <[EMAIL PROTECTED]>**20050920173532
 
 - new cffi-sys primitive: foreign-symbol-ptr (still needs semantics to
   be defined when dealing with undefined foreign symbols)
 - defcvar now uses this /at load-time/.
] 
[Don't free lisp allocated memory on the C side.
Luis Oliveira <[EMAIL PROTECTED]>**20050916004700] 
[Fix bug with arrays in uffi-compat.
Luis Oliveira <[EMAIL PROTECTED]>**20050915142238] 
[Corman Lisp update and note added to the manual.
Luis Oliveira <[EMAIL PROTECTED]>**20050915043423
 
 - Added note to the User Manual that it reflects what's in
   cffi-luis, not the main branch.
 - Updated cffi-corman.lisp and fixed a critical bug.
   Now only 7 tests fail.
] 
[Removed test, tweaked tests/Makefile
Luis Oliveira <[EMAIL PROTECTED]>**20050915013027
 
 - Commented out the test STRUCT.ALIGNMENT.5 because an empty struct is
   not valid standard C and some compilers, namely VC++, won't compile it.
 - Add -ansi -pedantic to the compiler flags to catch things like this
   sooner next time.
] 
[Missing DLLEXPORTs in libtest.c
Luis Oliveira <[EMAIL PROTECTED]>**20050915001414] 
[make clean -> rm *.fsl too.
Luis Oliveira <[EMAIL PROTECTED]>**20050914203204] 
[Documentation and new test
Luis Oliveira <[EMAIL PROTECTED]>**20050914002507
 
 - Added detailed node listing to the User Manual.
 - New regression test: WITH-FOREIGN-PTR.EVALX2 (checks if the size
   argument is not evaluated twice by mistake)
 - Also removed an old comment-out test function from cffi-lispworks.lisp
] 
[Changes to callbacks.
Luis Oliveira <[EMAIL PROTECTED]>**20050913054015
 
 - Renamed make-callback to %defcallback and shifted the responsability
   of storing the address in the callback-ptr property to the cffi-sys
   backend. Previously in allegro and lispworks the host ffi's callback
   definitions were non toplevel, which is probably not right.
 - Use gensyms instead of callback-symbol-name (removed that function
   from utils.lisp)
] 
[Stack allocation in cffi-lispworks and tweak to run-tests
Luis Oliveira <[EMAIL PROTECTED]>**20050912065252
 
 - Lispworks's with-foreign-ptr stack allocates again.
 - run-tests now asks if we want to run the tests several times.
] 
[Fixed bug in cffi-lispworks
Luis Oliveira <[EMAIL PROTECTED]>**20050912031053
 
 - foreign-alloc now uses type :byte.
 - make-callback specifies more options to define-foreign-callable.
] 
[foreign-alloc and uffi-compat
Luis Oliveira <[EMAIL PROTECTED]>**20050909010022
 
 - removed foreign-object-alloc, added cffi:foreign-alloc with new options
   (including the functionality foreign-object-alloc provided).
 - renamed the cffi-sys:foreign-alloc's to cffi-sys:%foreign-alloc.
 - updated respective documentation.
 - improved mem-aref's documentation including new examples.
 - fixed with buf with lisp-string-to-foreign not handling empty strings
   correctly. added regression test.
 - fixed translate-to-c and translate-from-c (not exported yet)
 - fixed uffi-compat bugs, implemented all operators (including a bunch
   that aren't documented in UFFI's manual) except a foreign-string-length
   which is weird and not used anywhere. 
 - added "UFFI" as a nickname for the cffi-uffi-compat package.
] 
[Fixed Allegro warning, removed #-sbcl from callback test
Luis Oliveira <[EMAIL PROTECTED]>**20050908061253
 
 - Don't use call-direct on functions with 0 arguments.
 - Added a regression test for this and a test to see what
   void functions return. (the latter will probably fail on
   some ports)
 - SBCL has fixed the callback bug in version 0.9.4.11,
   removed the #-sbcl before the test that was triggering
   the bug.
] 
[Handle empty structures gracefully
Luis Oliveira <[EMAIL PROTECTED]>**20050907053119
 
 - Fixed notice-foreign-structure-definition to handle empty
   struct definitions correctly.
 - Added new test for this: STRUCT.ALIGNMENT.5
] 
[CFFI User Manual update.
Luis Oliveira <[EMAIL PROTECTED]>**20050902075750] 
[Fix struct bug, defcvar bug and tweaked bindings.lisp
Luis Oliveira <[EMAIL PROTECTED]>**20050902044050
 
 - 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..
] 
[Slight change to defcenum to make Corman Lisp happier.
Luis Oliveira <[EMAIL PROTECTED]>**20050901073604] 
[Well, lets support MINGW too.
Luis Oliveira <[EMAIL PROTECTED]>**20050831064645
 Tweaked the Makefile a bit to support MINGW too.
] 
[Win32 tweaks to the test library...
Luis Oliveira <[EMAIL PROTECTED]>**20050831063013
 
 ... 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.
] 
[%foreign-funcall-ptr and small fixes
Luis Oliveira <[EMAIL PROTECTED]>**20050831022358
 
 - New CFFI-SYS operator: %foreign-funcall-ptr. Implemented for
   Allegro, CLISP, CMUCL, SBCL and OpenMCL.
 - foreign-funcall can now take either a string or a pointer as its
   first argument. It'll decide at macroexpansion time whether to call
   %foreign-funcall or %foreign-funcall-ptr.
 - Updated foreign-funcall's documentation.
 - Allegro tweaks: fix the lisp-type specification of (* :void)
   pointers and :unsigned-char's. In the future, it might be better
   to simply not specify anything were not necessary, though.
 - Fixed silly bug in foreign-vars.lisp.
] 
[Documentation, bug fixes and tweaks
Luis Oliveira <[EMAIL PROTECTED]>**20050830025906
 
 Bug fixes / tweaks:
 - fixed typo in foreign-enum-value.
 - defcenum: renamed argument, allow a docstring.
 - defcvar and defcfun: also accept symbols as names.
 - defcvar: added (declare (ignore value)) when read-only is true.
 - foreign-funcall: fixed bug; premature canonicalization of the
   return-type. added regression test for this.
 - defcfun and defcallback: use the make-gensym-list utility
 - defcallback: return the callback name;
 - strings.lisp: fixed the docstrings for the :string translators;
 - mem-aref: fixed bug/typo in its setf-expander; added regression
   test for this.
 - defcstruct and defcunion: allow a docstring.
 - new tests: callbacks.qsort and funcall.string.3
 
 
 Documentation:
 - New file doc/Makefile for generating docs and uploading them to
   c-l.net.
 - Added every cffi function/macro that is currently exported.
   documented half of them or so.
 - colorize-lisp-examples.lisp: little script to colorize the examples
   in the texinfo-generated html docs.
 - gendocs.sh: generate the docs in various formats as well as an
   index page from gendocs_template.
 - further tweaks to doc/style.css.
] 
[More oops.
Luis Oliveira <[EMAIL PROTECTED]>**20050827080900
 
 - clisp: foreign-address-null is deprecated.
 - types: fixed bug, regarding expanders + anonymous types.
 - added documentation to the :boolean type
] 
[Oops
Luis Oliveira <[EMAIL PROTECTED]>**20050827030127
 
 - Forgot to add new file objects.lisp in last patch.
 - Bogus type got sent by mistake in early-types.lisp
 - Make DEFINE-FOREIGN-TYPE return the type name.
] 
[Type system improvements and more.
Luis Oliveira <[EMAIL PROTECTED]>**20050826144708
 
 - New tests: tests/enums.lisp (4 tests) and tests/misc-types.lisp (3 tests).
 - New file: objects.lisp, skeleton of the safe typed pointer interface. I
   also added a :boolean type here, it's looking for a better home still.
 - (early-types.lisp): type parsers, DEFINE-TYPE-SPEC-PARSER and PARSE-TYPE.
   Added abbility to have anonymous types (ie. a name is no longer required
   for FOREIGN-TYPE). Moved DEFCTYPE to types.lisp.
 - (enum.lisp): improved DEFCENUM, the values for each keyword are now
   optional, like in C. Added the anonymous type (:enum ...)
 - (types.lisp):
     - Renamed :TO-C-ARG to :TO-C-DYNAMIC.
     - Renamed FOREIGN-AREF to MEM-AREF and implemented compiler macros
       for it.
     - New exported macro: DEFINE-FOREIGN-TYPE for parameterized types.
     - Change DEFINE-TYPE-TRANSLATOR back to the previous interface,
       translators take a type argument now and we have translators
       available at runtime now too.
     - FOREIGN-TYPEDEF's now inherit their parent type's translators.
     - New :wrapper type, for anonymous typedefs with translators.
 - (strings.lisp): Renamed string to :string. Added new type, :string+ptr.
 - (utils.lisp): renamed let-if to bif.
 - (tests/callbacks.lisp): two tests were not being run for SBCL
   because I thought it triggered a bug but it's actually only one that
   triggers the bug. Fixed that.
 - Updated examples and tests to use :string instead of string.
] 
[A couple of minor changes.
Luis Oliveira <[EMAIL PROTECTED]>**20050821133513
 
 - Move #-cffi/no-foreign-funcall from cffi-tests.asd to
   tests/funcall.lisp and have the lisps that don't support this
   push the feature in cffi-<lisp>.lisp instead of defpackage.
 - New file: utils.lisp 
 - Make Allegro, CMUCL, Corman and OpenMCL use callback-symbol-name  (from cffi-utils) to safely intern callback symbol names (James)
 - Clisp: consider (pointerp NIL) => T
] 
[Clisp: use FOREIGN-ADDRESS-NULL in NULL-PTR-P
Luis Oliveira <[EMAIL PROTECTED]>**20050811044353] 
[Lispworks: use :byte for cffi's :char types
Luis Oliveira <[EMAIL PROTECTED]>**20050810010007] 
[Broken "support" for GCL.
Luis Oliveira <[EMAIL PROTECTED]>**20050806041119
 
 - Basic pointer operations and memory access is working.
 - Calling foreign functions too, probably, untested.
] 
[Initial support for Corman Lisp.
Luis Oliveira <[EMAIL PROTECTED]>**20050806040043
 
 - A few bugs and issues left, fails 5 tests. (the tests
   won't run automatically because Corman Lisp binds
   *load-truename* to NIL, so the code in tests/bindings.lisp
   doesn't find the C test library).
] 
[Minor edits and changed SQRTF test.
Luis Oliveira <[EMAIL PROTECTED]>**20050805193844
 
 - Commented out some unused forms in src/functions.lisp.
 - Defined our own SQRTF in libtest.c since it's not available
   on win32.
] 
[SBCL: use SB-SYS:FOREIGN-SYMBOL-SAP
Luis Oliveira <[EMAIL PROTECTED]>**20050805193658
 
 - SBCL 0.9.3 renamed SB-SYS:FOREIGN-SYMBOL-ADDRESS to
   SB-SYS:FOREIGN-SYMBOL-SAP. Use this instead.
] 
[Small change to DEFCFUN-HELPER-FORMS.
Luis Oliveira <[EMAIL PROTECTED]>**20050805193417
 
 - Make it take an extra argument "lisp-name". Hopefully I got
   this stuff right this time, I'm not sure yet.
] 
[Make DEFCVAR use the type translation mechanism.
Luis Oliveira <[EMAIL PROTECTED]>**20050805192631
 
 - Also added new tests. Note, Lispworks on x86 starts behaving
   erratically after runing the FOREIGN-GLOBALS.SET.STRING test
   and eventually dies an horrible death. Also, Allegro doesn't
   like its memory being free()d by C. doc/allegro-internals.txt
   has some info on this. Should be easy to figure out.
] 
[Lispworks bug fixes.
Luis Oliveira <[EMAIL PROTECTED]>**20050805191902
 
 - FLI:INCF-POINTER didn't increment the pointers at all.
   Implemented CFFI-SYS:INC-PTR using FLI:MAKE-POINTER and
   FLI:POINTER-ADDRESS instead.
 - FLI:WITH-DYNAMIC-FOREIGN-OBJECTS was causing troubles on
   all platforms, heap allocate for the time being.
 - Missing (convert-foreign-type rettype) when defining a
   foreign function. 
 - FOREIGN-VAR-PTR was trying to access the var too soon,
   simplified it a bit too.
] 
[Allegro port update, bug fixes.
Luis Oliveira <[EMAIL PROTECTED]>**20050805191454
 
 - Convert chars to signed-byte instead of unsigned-byte (need
   to figure out the issues between signed vs. unsigned char, btw)
 - WITH-FOREIGN-PTR was evaluating SIZE twice.
] 
[New callback interface.
Luis Oliveira <[EMAIL PROTECTED]>**20050805185915
 
 - New interface: DEFCALLBACK, CALLBACK, GET-CALLBACK
 - New CALLBACK.* tests.
 - Implementations of CFFI-SYS:MAKE-CALLBACK:
     - Allegro, passes all tests on linux/x86 and win32
       fails CALLBACKS.CHAR/UNSIGNED-CHAR/SHORT/UNSIGNED-SHORT
       on darwin/ppc, looks like an Allegro bug.
     - clisp, passes all tests.
     - cmucl, passes all tests on linux/x86, on darwin/ppc fails
       CALLBACKS.CHAR/UNSIGNED-CHAR/SHORT/UNSIGNED-SHORT, looks
       like a bug in cmucl/ppc too.
     - sbcl, x86 only, passes all tests except its callbacks
       can't handle sap's yet, that'd be bug in sbcl too.
     - openmcl, fails CALLBACKS.FLOAT/DOUBLE, I reported this
       bug in openmcl, and it has been confirmed.
     - Lispworks, passes all tests on darwin/ppc, on linux/x86
       and win32 there are issues unrelated to callbacks.
] 
[New type translation interface.
Luis Oliveira <[EMAIL PROTECTED]>**20050805184509
 
 - Removed define-type-translator, added define-type-translation with
   a new interface.
 - Make with-object-translated, translate-objects and the string
   type use the new interface.
] 
[Minor simplification to test-op in cffi-tests.asd
Luis Oliveira <[EMAIL PROTECTED]>**20050805183631] 
[:cffi/no-foreign-funcall and unexport foreign-var-ptr
Luis Oliveira <[EMAIL PROTECTED]>**20050804043827
 
 * Push :cffi/no-foreign-funcall to *features* when the host
   lisp does not support it.
 * Don't run the funcall tests when #+cffi/no-foreign-funcall
 * Unexport foreign-var-ptr, it's meant to be used by defcvar
   only.
] 
[Use fboundp instead of find-symbol to define default defcfun helper.
Luis Oliveira <[EMAIL PROTECTED]>**20050803002935] 
[Bugfix: clisp converts NULL to NIL
Luis Oliveira <[EMAIL PROTECTED]>**20050802021638
 
 Added workaround in the pointer operations because of this.
 Also added test: deref.pointer.null
] 
[Convert docs to Texinfo format.
Luis Oliveira <[EMAIL PROTECTED]>**20050730160328] 
[Rename DEFCFUN-HELPER to DEFCFUN-HELPER-FORMS.
Luis Oliveira <[EMAIL PROTECTED]>**20050713224259] 
[parse-c-type on load-time
Luis Oliveira <[EMAIL PROTECTED]>**20050711061611] 
[Bug fix. Forgot to canonicalize the return type (and added test)
Luis Oliveira <[EMAIL PROTECTED]>**20050711052929] 
[Add in-package :cl-user to tests/package.lisp
Luis Oliveira <[EMAIL PROTECTED]>**20050711045738] 
[Implement DEFCFUN-HELPER idea.
Luis Oliveira <[EMAIL PROTECTED]>**20050711045325
 
  - cffi-sys implementations can now define a defcfun-helper
    function that returns two forms, a prelude and a caller.
    (todo: explain this better in the code/doc)
  - changed foreign-funcall-1 to translate-objects
    (also todo: document translate-objects)
] 
[Implement FOREIGN-VAR-PTR and DEFCFUN-HELPER (thus DEFCFUN) for Lispworks.
Luis Oliveira <[EMAIL PROTECTED]>**20050711045136] 
[Make foreign-var-ptr a macro, make DEFCVAR type a normal arg
Luis Oliveira <[EMAIL PROTECTED]>**20050711044934] 
[New DEFCFUN tests based on the FUNCALL tests.
Luis Oliveira <[EMAIL PROTECTED]>**20050711044713] 
[Update port for Allegro.
Luis Oliveira <[EMAIL PROTECTED]>**20050711043851
 
  - cleaned up the code/comments
  - doh, use ff:with-stack-object in with-foreign-ptr
  - convert-foreign-type takes a context argument because
    system::ff-funcall (and ff:def-foreign-call) want
    :foreign-address instead of '(* :void)
  - better way of geting the alignment
  - defcfun-helper, using ff:def-foreign-call
  - changed foreign-var-ptr to be a macro
 
 This still needs some more cleaning up :-) Ah and this
 patch probably depends on the patches to DEFCFUN and DEFCVAR.
] 
[Make test depend on test-clisp and not on test-allegro
Luis Oliveira <[EMAIL PROTECTED]>**20050711043729] 
[Pass -q switch to clisp in Makefile
Luis Oliveira <[EMAIL PROTECTED]>**20050711043643] 
[Some notes about Allegro's internals.
Luis Oliveira <[EMAIL PROTECTED]>**20050711022020] 
[Add (in-package #:cl-user) to package.lisp
Luis Oliveira <[EMAIL PROTECTED]>**20050707005106] 
[use WITH-PINNED-OBJECTS instead of WITHOUT-GCING on SBCL
James Bielman  <[EMAIL PROTECTED]>**20050705223418] 
[use SYSTEM-AREA-POINTER for :pointer like CMU CL
James Bielman  <[EMAIL PROTECTED]>**20050705193828] 
[use low-level interface for memory access on ecl
James Bielman  <[EMAIL PROTECTED]>**20050705164350] 
[Fix conflict?
Luis Oliveira <[EMAIL PROTECTED]>**20050705135052] 
[life is officially grand
James Bielman  <[EMAIL PROTECTED]>**20050705110100] 
[fix misplaced comment in ecl backend
James Bielman  <[EMAIL PROTECTED]>**20050705083800] 
[implement ecl backend
James Bielman  <[EMAIL PROTECTED]>**20050705075324] 
[Add convert-external-name to cffi-allegro.lisp
Luis Oliveira <[EMAIL PROTECTED]>**20050705025245] 
[Preliminary port to Allegro CL
Luis Oliveira <[EMAIL PROTECTED]>**20050705002935] 
[Preliminary foreign variables for cmucl/sbcl/openmcl/clisp
Luis Oliveira <[EMAIL PROTECTED]>**20050704031609] 
[Export pointerp from cffi-sys (openmcl)
Luis Oliveira <[EMAIL PROTECTED]>**20050703013832] 
[Change &KEYWORD back to &OPTIONAL in MEM-VECTOR interface.
jbielman**20050627184929] 
[Fix comment typo.
jbielman**20050623055150] 
[Add some commentary about the how to implement UFFI
jbielman**20050623054422
 Add some commentary about the how to implement UFFI
 array types and unions correctly.
 
] 
[Add basic tests for foreign structures.
jbielman**20050623001311] 
[Add a simple test for foreign unions.
jbielman**20050614033543] 
[Add support for foreign unions and a file for their unit tests.
jbielman**20050614033113] 
[Add more unit tests for dereferencing unsigned integers and floats.
jbielman**20050614022318] 
[Update supported implementations in README.
jbielman**20050613141701] 
[Reorder the documentation for MAKE-SHAREABLE-BYTE-VECTOR to make sense.
jbielman**20050613132718] 
[Describe MAKE-SHAREABLE-BYTE-VECTOR a little.
jbielman**20050613131834] 
[Add proposed shareable byte vector interface.
jbielman**20050613105629] 
[Add initial specification of proposed block memory operations.
jbielman**20050613095658] 
[Add a (not-yet-working) example of complex aggregate struct slot access.
jbielman**20050613095632] 
[Fresh-line before printing the header when running tests.
jbielman**20050613094608] 
[Define and export FOREIGN-SLOT-ADDRESS.
jbielman**20050613094503] 
[First implementation of embedded structures and arrays, still needs tests.
jbielman**20050612091327] 
[Remove obsolete file.
jbielman**20050612083615] 
[Don't bother trying to define FFI:FOREIGN-VARIABLE in CLISP 2.33.2 and
jbielman**20050612083348
 Don't bother trying to define FFI:FOREIGN-VARIABLE in CLISP 2.33.2 and
 earlier as there is no hope of supporting it anyway.
 
] 
[Fix typo in method definitions of AGGREGATEP.
jbielman**20050612082825] 
[Very preliminary Lispworks support.
jbielman**20050612082708
 Very preliminary Lispworks support.
 Calling foreign functions is not implemented, and will probably require
 vendor support as a necessary primitive does not seem to be exported.
 
] 
[Initialize foreign strings to empty in case the foreign function
jbielman**20050612082516
 Initialize foreign strings to empty in case the foreign function
 calling mechanism doesn't work.  Prevents the Lisp from running off
 trying to convert MOST-POSITIVE-FIXNUM bytes into a string.
 
] 
[Fairly major cleanup to the foreign type system:
jbielman**20050612082351
 Fairly major cleanup to the foreign type system:
 * All foreign types at the CFFI user level are now represented by CLOS
   instances.  In particular, there is a FOREIGN-BUILT-IN-TYPE class that
   represents a built-in type keyword understood by CFFI-SYS.
 * Canonicalization, size, and alignment of foreign types is now handled
   via generic functions defined on each type class.
 * FOREIGN-ENUM is now a subclass of FOREIGN-TYPEDEF.
 
] 
[Clean up the way tests are run a bit.
jbielman**20050612082119] 
[Some progress on better CLISP support, requires CVS CLISP.
jbielman**20050611080628] 
[Ignore errors when Lisp implementations aren't found while testing.
jbielman**20050611071811] 
[Remove obsolete shlibs and tests.
jbielman**20050611071624] 
[Add unit testing framework using RT.
jbielman**20050611052654
 Add unit testing framework using RT.
 Lots of manual and CFFI-SYS updates.
 Add passing a double float to sprintf in examples.lisp.
 Update the syntax of the nested structure example.
 Add the INC-PTR function to the CFFI-SYS backends.
 Add the shareable byte vector interface to the CFFI-SYS backends.
 Started writing support for aggregate structure slots.  Not used yet.
 
] 
[Remove this file, we have the spec instead.
jbielman**20050610130047] 
[Fix typo in comment.
jbielman**20050608072818
 Fix typo in comment.
 Apparently I don't know what year it is...
 
] 
[Add foreign enumerated types that automatically convert from keywords
jbielman**20050608070132
 Add foreign enumerated types that automatically convert from keywords
 to integers when passed or returned to/from foreign functions.
 
] 
[Call malloc and free directly when allocating foreign memory instead
jbielman**20050608065952
 Call malloc and free directly when allocating foreign memory instead
 of using aliens to prevent compiler notes in CMU CL.
 
 Convert :POINTER to SYSTEM-AREA-POINTER instead of (ALIEN (* T)) .
 
] 
[Update the comments about the status of our CLISP support.
jbielman**20050607220858] 
[Remove this bogus file.
jbielman**20050607220700] 
[Clean up CLISP support some, will need CVS version of CLISP to properly
jbielman**20050607220508
 Clean up CLISP support some, will need CVS version of CLISP to properly
 handle looking up symbols in all loaded foreign libraries.
 
 Add preliminary support for CMU CL (tested in 19b-pre on OS X).
 
] 
[Initial revision
jbielman**20050607202929] 
Patch bundle hash:
6ed918914b50a546b89c4706669cc91c87cacace
_______________________________________________
cffi-devel mailing list
cffi-devel@common-lisp.net
http://common-lisp.net/cgi-bin/mailman/listinfo/cffi-devel

Reply via email to