Compile error with gcc

Dimitry Andric dim at FreeBSD.org
Sun Feb 16 13:05:42 UTC 2014


On 16 Feb 2014, at 13:45, Julio Merino <jmmv at outlook.com> wrote:
> On Feb 16, 2014, at 7:11, Dimitry Andric <dim at FreeBSD.org> wrote:
>> 
>> I don't think this will always work correctly.  If MK_LIBCPLUSPLUS is
>> defined in bsd.own.mk, it only means libc++ is being *built*, not that
>> it is being used.
>> 
>> It is probably easier and more fool-proof to check if _LIBCPP_VERSION is
>> defined (which is the case when you use libc++) in bconfig.h, like so:
>> 
>> Index: contrib/atf/bconfig.h
>> ===================================================================
>> --- contrib/atf/bconfig.h       (revision 261974)
>> +++ contrib/atf/bconfig.h       (working copy)
>> @@ -56,7 +56,9 @@
>> #define HAVE_UNSETENV 1
>> 
>> /* Define to 1 if vsnprintf is in std */
>> +#ifdef _LIBCPP_VERSION
>> #define HAVE_VSNPRINTF_IN_STD 1
>> +#endif
> 
> Let's not do that unless we can change configure.ac to generate these same contents.
> 
> Maybe we can just revert this to _not_ define HAVE_VSNPRINTF_IN_STD as it used to be the case before the new import?  Things were working just fine with both libstdc++ and libc++ even if that setting was not accurate for the latter...

Well, contrib/atf/atf-c++/detail/application.cpp has:

#if !defined(HAVE_VSNPRINTF_IN_STD)
namespace std {
using ::vsnprintf;
}
#endif // !defined(HAVE_VSNPRINTF_IN_STD)

so it sort of hacks around it anyway. :-)

-Dimitry

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 203 bytes
Desc: Message signed with OpenPGP using GPGMail
URL: <http://lists.freebsd.org/pipermail/freebsd-testing/attachments/20140216/d3dec651/attachment.sig>


More information about the freebsd-testing mailing list