simplify inline function infrastructure
authorAndy Wingo <wingo@pobox.com>
Thu, 26 May 2011 13:53:02 +0000 (15:53 +0200)
committerAndy Wingo <wingo@pobox.com>
Thu, 8 Mar 2012 11:40:27 +0000 (12:40 +0100)
commit46163e52e5513cf882dafe2bbd05ffbd2b03a755
tree670f91a5e70e1949ebd45655183bfef257c8d0c2
parentbe79627c21ba0848af3ac7bea25293170fec6480
simplify inline function infrastructure

* libguile/__scm.h (SCM_C_EXTERN_INLINE): Move this definition here,
  from inline.h.  We'd like to support inline function definitions in
  more header files: not just inline.h.
  (SCM_CAN_INLINE, SCM_INLINE, SCM_INLINE_IMPLEMENTATION): New
  definitions.

* libguile/gc.h (SCM_GC_MALLOC, SCM_GC_MALLOC_POINTERLESS): Define these
  wrappers, which redirect to the GC_MALLOC macros when building Guile,
  and the scm_gc_malloc functions otherwise.  A step towards getting
  BDW-GC out of Guile's API.

* libguile/inline.h: Simplify, using SCM_INLINE,
  SCM_INLINE_IMPLEMENTATION, and SCM_IMPLEMENT_INLINES.  Also use the
  new SCM_GC_MALLOC macros.
libguile/__scm.h
libguile/gc.h
libguile/inline.c
libguile/inline.h