On Tue, 26 Apr 2016, Bernd Edlinger wrote:
For instance PR libstdc++/69881: gmp.h did this:
#define __need_size_t /* tell gcc stddef.h we only want size_t */
#include <cstddef> /* for size_t */
I've persuaded Jonathan to work around that in libstdc++.
Of course the in-tree build does work with less versions than
otherwise.
IIUC, the bug only shows up if you compile in C++11 or later, so basically
g++-6 or later, and there is a workaround in libstdc++ starting from
version 6 that means that it doesn't cause any problem. So there might be
a problem if someone tries to build gcc using CXX='g++-5 -std=c++11' or
CXX='clang++ -stdlib=libc++' on a glibc system (I don't think others use
__need_size_t?), but those are rather odd cases.
To support gmp-6.1.0 in-tree we have to set AM_CFLAGS=-DNO_ASM
as already done with mpfr. This was already discussed recently on
this list.
Note that gmp-6.1.1 is supposed to be out any day now and will not
require -DNO_ASM anymore.
Yes, I know. I mean, I have tested the patch already with the gmp
snapshots, but was not aware that it will be available so soon.
However I think it would not really hurt to allow a little
more interoperability, even for in-tree builds.
It is just a matter what versions we want to test, I have not really
any idea where the limits will be, just that it can no longer be 4.3.2.
Even if in-tree builds work with several versions, we may still want to
document only one as supported.
--
Marc Glisse