Subject: Re: [boost] [Boost.config] User.hpp for new PGI 10.9 compiler
From: John Maddock (boost.regex_at_[hidden])
Date: 2010-11-05 13:54:40


>>> Can a Boost.config developer take a look at the attached user.hpp
>>> generated by the configure script for the pgi-10.9 toolset? Are
>>> there any obvious changes necessary to boost/config/compiler/pgi.hpp?
>>
>> Can I get to run the configure script with the --enable-test option -
>> it'll
>> print the changes it thinks are necessary at the end of the run - much
>> easier and more reliable than trying to figure things out manually.
>
>
> Ah, didn't know about this option. Here's the result.

Thanks, I think I need a little more info to do this properly:

Are we running regression tests for this compiler anywhere? If not the
output from running the program config_info.cpp in libs/config/test would be
most useful.

> the following macros need to be defined
> BOOST_HAS_PTHREADS BOOST_NO_TWO_PHASE_NAME_LOOKUP

Hmmm looks like threading support gets turned off in suffix.hpp with:

#if (defined(__MT__) || defined(_MT) || defined(_REENTRANT) \
    || defined(_PTHREADS) || defined(__APPLE__) || defined(__DragonFly__)) \
    && !defined(BOOST_HAS_THREADS)
# define BOOST_HAS_THREADS
#endif

Does the compiler have a separate multi-threaded mode than enables any of
those macros, or should we define BOOST_HAS_THREADS unconditionally, or
something else?

> the following macros need to be undef'ed
> BOOST_NO_VARIADIC_MACROS BOOST_NO_STDC_NAMESPACE BOOST_NO_EXTERN_TEMPLATE
> BOOST_NO_EXCEPTION_STD_NAMESPACE BOOST_DEDUCED_TYPENAME

BOOST_NO_DEDUCED_TYPENAME is spurious here (it's always defined), two of the
others (BOOST_NO_STDC_NAMESPACE and BOOST_NO_EXCEPTION_STD_NAMESPACE) are
std lib related, which std lib is used? STLPort by any chance?

Thanks, John.