Do you mean an Allegro CL test? I don't think that's necessary since the manual is clear on the behavior, and I've witnessed GC block in my own code.

From reading other posts in the thread, it does seem that Allegro CL is the outlier.

I could add a note in the manual that mentions that whether GC blocks during a foreign function call is implementation dependent.


On Fri, Aug 2, 2013 at 2:54 AM, Luís Oliveira <loliveira@common-lisp.net> wrote:
On Wed, Jul 31, 2013 at 10:15 AM, Stelian Ionescu <sionescu@cddr.org> wrote:
> SBCL never disables GC globally, and I don't think that CCL, ECL or ABCL
> do that either.
> http://www.lispworks.com/documentation/lw61/FLI/html/fli-94.htm#pgfId-1070272 has no mention of GC, so it would seem that among SMP Lisps Allegro is the only one to do sophisticated stuff. CMUCL and Clisp are currently single-threaded so GC is implicitly disabled during foreign calls.

Precise confirmation would be nice -- a test perhaps -- would be nice.
Felix, do you feel like writing a test that checks whether GC can
happen while a foreign function call is ongoing?

If we can confirm that ACL is the outlier, then (a) I'm all for
changing cffi-allegro's implementation to match the semantics of the
other Lisps and (b) documenting these semantics in the manual.

Cheers,

--
Luís Oliveira
http://kerno.org/~luis/