[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Now that SCM type is a union...
From: |
Andy Wingo |
Subject: |
Re: Now that SCM type is a union... |
Date: |
Sun, 14 Aug 2011 22:10:56 +0200 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/23.3 (gnu/linux) |
Hi Ken,
On Sun 14 Aug 2011 00:00, Ken Raeburn <address@hidden> writes:
> * We should expect some Guile applications to be in C++. What
> versions of the C++ spec should Guile support?
Dunno. What do other languages have to do with Guile's C interface?
Specifically what does C++ have to do with this? (Serious question.)
> * Shouldn't there be testing to catch this? (C89 mode, C99 mode,
> different C++ specs, enabling various compiler warnings -- for
> whatever compiler is in use -- and make them fatal, any interesting
> ways one might want to use libguile in an application that might
> stress compatibility issues.) I mean automated testing, not just
> Cedric. :-)
Perhaps :) Interested volunteers are welcome to set this up :)
>> I will take a look at this issue soonish, but your help (and Cedric's)
>> in debugging it is most appreciated :) I would love to keep the union
>> as the "normal" SCM definition, but that might not be possible.
>
> Regardless of the validity, there are popular compilers out there now
> which do not support this, when used in modes people may need or want
> to use. The installed headers need to adhere to higher standards in
> terms of portability problems and warnings than the library source,
> where we can dictate some of the compiler options.
Agreed. And AFAIK there are some ABI differences for returning unions
versus returning uintptr_t, so unfortunately it can't be a question of
ifdefs in Guile's C interface, it seems. I'll work on this, but if you
have any suggestions as to the proper fix, they are most welcome.
Andy
--
http://wingolog.org/