- All tests pass except the 'qnan' test mentioned in the previous
commit. The test command line is: `b2 -q toolset=craype cxxstd=03
cxxstd-dialect=gnu`
- All tests pass except that one about 'qnan' (described in the last
commit). The test command line is: `b2 -q toolset=craype cxxstd=11
cxxstd-dialect=gnu`.
- Almost everything is passing. The only thing that's failing is
'limits_test.cpp', which is failing tests on lines 160 and 161 (shown
below).
if(lim::is_iec559)
{
BOOST_TEST(! (qnan == qnan)); # __LINE__ == 160
BOOST_TEST(qnan != qnan); # __LINE__ == 161
}
- The effect of the logic is the same as before, but it is organized
according to the outline described in the comments. The only change in
the logic is that we always include 'common_edg.hpp', since we know we
are only dealing with EDG based compilers.
This is required at least for Boost.WinAPI to match the declarations in
Windows SDK headers, which use dllimport.
Also, for clang on Windows, use dllimport/dllexport even beyond Cygwin.
The compiler does support these attributes, and it should for
compatibility with Windows headers.
I know, Boost doesn't support MSVC 5.0 and 6.0. But the expression is invalid. Another way to fix it:
```c++
# if _MSC_VER < 1300
// Note: Versions up to 7.0 aren't supported.
# define BOOST_COMPILER_VERSION 6.0
# elif _MSC_VER < 1310
# define BOOST_COMPILER_VERSION 7.0
```
When the PGI C++ compiler changed to be GNU compatible, pgi.hpp stopped being used, because the check for __GNUC__ in select_compiler_config.hpp was true before the preprocessor ever got to the check for __PGI. Rearrange the order of the checks in select_compiler_config.hpp, moving the check for __PGI above the check for __GNUC__.
pgi.hpp was designed for a very old version of PGI C++, before it was GNU compatible. The settings in that file won't work for PGI compilers of the last few years. Replace the entire file with one that just includes gcc.hpp and then adjusts a few macros for areas where PGI is not quite GNU compatible. (The old PGI compilers are not actively being used by any customers that we (PGI) know of, so keeping the old contents of pgi.hpp would be of little or no benefit.)