Boost logo

Boost-Commit :

Subject: [Boost-commit] svn:boost r74889 - in branches/release: boost boost/config boost/config/compiler boost/config/platform libs/config libs/config/doc libs/config/doc/html libs/config/doc/html/boost_config libs/config/test libs/config/test/all
From: john_at_[hidden]
Date: 2011-10-10 07:50:58


Author: johnmaddock
Date: 2011-10-10 07:50:55 EDT (Mon, 10 Oct 2011)
New Revision: 74889
URL: http://svn.boost.org/trac/boost/changeset/74889

Log:
Merge Boost.Config changes from Trunk - numerous small bug fixes plus a new Cray C++ config.
Fixes #5607.
Fixes #5941.
Fixes #5878.
Added:
   branches/release/boost/config/compiler/cray.hpp
      - copied unchanged from r74887, /trunk/boost/config/compiler/cray.hpp
   branches/release/boost/config/platform/cray.hpp
      - copied unchanged from r74887, /trunk/boost/config/platform/cray.hpp
   branches/release/libs/config/test/boost_has_getsystemtimeasfiletime.ipp
      - copied unchanged from r74880, /trunk/libs/config/test/boost_has_getsystemtimeasfiletime.ipp
   branches/release/libs/config/test/has_getsystemtimeasfiletime_fail.cpp
      - copied unchanged from r74880, /trunk/libs/config/test/has_getsystemtimeasfiletime_fail.cpp
   branches/release/libs/config/test/has_getsystemtimeasfiletime_pass.cpp
      - copied unchanged from r74880, /trunk/libs/config/test/has_getsystemtimeasfiletime_pass.cpp
Properties modified:
   branches/release/boost/config/ (props changed)
   branches/release/boost/config.hpp (props changed)
   branches/release/boost/current_function.hpp (contents, props changed)
   branches/release/libs/config/ (props changed)
Text files modified:
   branches/release/boost/config/auto_link.hpp | 2 +-
   branches/release/boost/config/compiler/intel.hpp | 7 ++++---
   branches/release/boost/config/platform/win32.hpp | 2 ++
   branches/release/boost/config/select_compiler_config.hpp | 4 ++++
   branches/release/boost/config/select_platform_config.hpp | 6 +++++-
   branches/release/boost/current_function.hpp | 3 ++-
   branches/release/libs/config/doc/html/boost_config/acknowledgements.html | 2 +-
   branches/release/libs/config/doc/html/boost_config/boost_macro_reference.html | 21 +++++++++++++++++++--
   branches/release/libs/config/doc/html/boost_config/guidelines_for_boost_authors.html | 2 +-
   branches/release/libs/config/doc/html/boost_config/rationale.html | 2 +-
   branches/release/libs/config/doc/html/index.html | 6 +++---
   branches/release/libs/config/doc/macro_reference.qbk | 5 ++++-
   branches/release/libs/config/test/all/Jamfile.v2 | 5 ++++-
   branches/release/libs/config/test/boost_has_ftime.ipp | 5 ++---
   branches/release/libs/config/test/boost_no_decltype.ipp | 4 ++++
   branches/release/libs/config/test/config_info.cpp | 18 ++++++++++++++++++
   branches/release/libs/config/test/config_test.cpp | 12 +++++++++++-
   17 files changed, 86 insertions(+), 20 deletions(-)

Modified: branches/release/boost/config/auto_link.hpp
==============================================================================
--- branches/release/boost/config/auto_link.hpp (original)
+++ branches/release/boost/config/auto_link.hpp 2011-10-10 07:50:55 EDT (Mon, 10 Oct 2011)
@@ -364,7 +364,7 @@
 #ifdef BOOST_AUTO_LINK_TAGGED
 # pragma comment(lib, BOOST_LIB_PREFIX BOOST_STRINGIZE(BOOST_LIB_NAME) BOOST_LIB_THREAD_OPT BOOST_LIB_RT_OPT ".lib")
 # ifdef BOOST_LIB_DIAGNOSTIC
-# pragma message ("Linking to lib file: " BOOST_LIB_PREFIX BOOST_STRINGIZE(BOOST_LIB_NAME) "-" BOOST_LIB_TOOLSET BOOST_LIB_THREAD_OPT BOOST_LIB_RT_OPT "-" BOOST_LIB_VERSION ".lib")
+# pragma message ("Linking to lib file: " BOOST_LIB_PREFIX BOOST_STRINGIZE(BOOST_LIB_NAME) BOOST_LIB_THREAD_OPT BOOST_LIB_RT_OPT ".lib")
 # endif
 #elif defined(BOOST_AUTO_LINK_NOMANGLE)
 # pragma comment(lib, BOOST_STRINGIZE(BOOST_LIB_NAME) ".lib")

Modified: branches/release/boost/config/compiler/intel.hpp
==============================================================================
--- branches/release/boost/config/compiler/intel.hpp (original)
+++ branches/release/boost/config/compiler/intel.hpp 2011-10-10 07:50:55 EDT (Mon, 10 Oct 2011)
@@ -27,7 +27,7 @@
 #endif
 
 // Flags determined by comparing output of 'icpc -dM -E' with and without '-std=c++0x'
-#if (!(defined(_WIN32) || defined(_WIN64)) && defined(__STDC_HOSTED__) && __STDC_HOSTED__) || defined(__GXX_EXPERIMENTAL_CPP0X__)
+#if (!(defined(_WIN32) || defined(_WIN64)) && defined(__STDC_HOSTED__) && (__STDC_HOSTED__ && (BOOST_INTEL_CXX_VERSION <= 1200))) || defined(__GXX_EXPERIMENTAL_CPP0X__)
 # define BOOST_INTEL_STDCXX0X
 #endif
 #if defined(_MSC_VER) && (_MSC_VER >= 1600)
@@ -179,8 +179,9 @@
 // intel-vc9-win-11.1 may leave a non-POD array uninitialized, in some
 // cases when it should be value-initialized.
 // (Niels Dekker, LKEB, May 2010)
+// Apparently Intel 12.1 (compiler version number 9999 !!) has the same issue (compiler regression).
 #if defined(__INTEL_COMPILER)
-# if __INTEL_COMPILER <= 1110
+# if (__INTEL_COMPILER <= 1110) || (__INTEL_COMPILER == 9999)
 # define BOOST_NO_COMPLETE_VALUE_INITIALIZATION
 # endif
 #endif
@@ -210,7 +211,7 @@
 #endif
 
 #if defined(BOOST_INTEL_STDCXX0X) && (BOOST_INTEL_CXX_VERSION >= 1200)
-# undef BOOST_NO_RVALUE_REFERENCES
+//# undef BOOST_NO_RVALUE_REFERENCES // Enabling this breaks Filesystem and Exception libraries
 //# undef BOOST_NO_SCOPED_ENUMS // doesn't really work!!
 # undef BOOST_NO_DELETED_FUNCTIONS
 # undef BOOST_NO_DEFAULTED_FUNCTIONS

Modified: branches/release/boost/config/platform/win32.hpp
==============================================================================
--- branches/release/boost/config/platform/win32.hpp (original)
+++ branches/release/boost/config/platform/win32.hpp 2011-10-10 07:50:55 EDT (Mon, 10 Oct 2011)
@@ -55,6 +55,8 @@
 
 #ifdef _WIN32_WCE
 # define BOOST_NO_ANSI_APIS
+#else
+# define BOOST_HAS_GETSYSTEMTIMEASFILETIME
 #endif
 
 #ifndef BOOST_HAS_PTHREADS

Modified: branches/release/boost/config/select_compiler_config.hpp
==============================================================================
--- branches/release/boost/config/select_compiler_config.hpp (original)
+++ branches/release/boost/config/select_compiler_config.hpp 2011-10-10 07:50:55 EDT (Mon, 10 Oct 2011)
@@ -17,6 +17,10 @@
 // GCC-XML emulates other compilers, it has to appear first here!
 # define BOOST_COMPILER_CONFIG "boost/config/compiler/gcc_xml.hpp"
 
+#elif defined(_CRAYC)
+// EDG based Cray compiler:
+# define BOOST_COMPILER_CONFIG "boost/config/compiler/cray.hpp"
+
 #elif defined __CUDACC__
 // NVIDIA CUDA C++ compiler for GPU
 # define BOOST_COMPILER_CONFIG "boost/config/compiler/nvcc.hpp"

Modified: branches/release/boost/config/select_platform_config.hpp
==============================================================================
--- branches/release/boost/config/select_platform_config.hpp (original)
+++ branches/release/boost/config/select_platform_config.hpp 2011-10-10 07:50:55 EDT (Mon, 10 Oct 2011)
@@ -13,7 +13,7 @@
 // <header_name> in order to prevent macro expansion within the header
 // name (for example "linux" is a macro on linux systems).
 
-#if defined(linux) || defined(__linux) || defined(__linux__) || defined(__GNU__) || defined(__GLIBC__)
+#if (defined(linux) || defined(__linux) || defined(__linux__) || defined(__GNU__) || defined(__GLIBC__)) && !defined(_CRAYC)
 // linux, also other platforms (Hurd etc) that use GLIBC, should these really have their own config headers though?
 # define BOOST_PLATFORM_CONFIG "boost/config/platform/linux.hpp"
 
@@ -69,6 +69,10 @@
 // Symbian:
 # define BOOST_PLATFORM_CONFIG "boost/config/platform/symbian.hpp"
 
+#elif defined(_CRAYC)
+// Cray:
+# define BOOST_PLATFORM_CONFIG "boost/config/platform/cray.hpp"
+
 #elif defined(__VMS)
 // VMS:
 # define BOOST_PLATFORM_CONFIG "boost/config/platform/vms.hpp"

Modified: branches/release/boost/current_function.hpp
==============================================================================
--- branches/release/boost/current_function.hpp (original)
+++ branches/release/boost/current_function.hpp 2011-10-10 07:50:55 EDT (Mon, 10 Oct 2011)
@@ -28,7 +28,7 @@
 inline void current_function_helper()
 {
 
-#if defined(__GNUC__) || (defined(__MWERKS__) && (__MWERKS__ >= 0x3000)) || (defined(__ICC) && (__ICC >= 600))
+#if defined(__GNUC__) || (defined(__MWERKS__) && (__MWERKS__ >= 0x3000)) || (defined(__ICC) && (__ICC >= 600)) || defined(__ghs__)
 
 # define BOOST_CURRENT_FUNCTION __PRETTY_FUNCTION__
 
@@ -65,3 +65,4 @@
 } // namespace boost
 
 #endif // #ifndef BOOST_CURRENT_FUNCTION_HPP_INCLUDED
+

Modified: branches/release/libs/config/doc/html/boost_config/acknowledgements.html
==============================================================================
--- branches/release/libs/config/doc/html/boost_config/acknowledgements.html (original)
+++ branches/release/libs/config/doc/html/boost_config/acknowledgements.html 2011-10-10 07:50:55 EDT (Mon, 10 Oct 2011)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
 <title>Acknowledgements</title>
 <link rel="stylesheet" href="../../../../../doc/src/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
+<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
 <link rel="home" href="../index.html" title="Boost.Config">
 <link rel="up" href="../index.html" title="Boost.Config">
 <link rel="prev" href="rationale.html" title="Rationale">

Modified: branches/release/libs/config/doc/html/boost_config/boost_macro_reference.html
==============================================================================
--- branches/release/libs/config/doc/html/boost_config/boost_macro_reference.html (original)
+++ branches/release/libs/config/doc/html/boost_config/boost_macro_reference.html 2011-10-10 07:50:55 EDT (Mon, 10 Oct 2011)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
 <title>Boost Macro Reference</title>
 <link rel="stylesheet" href="../../../../../doc/src/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
+<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
 <link rel="home" href="../index.html" title="Boost.Config">
 <link rel="up" href="../index.html" title="Boost.Config">
 <link rel="prev" href="../index.html" title="Boost.Config">
@@ -1439,7 +1439,24 @@
               </td>
 <td>
                 <p>
- The platform has the Win32 API <code class="computeroutput"><span class="identifier">GetSystemTimeAsFileTime</span></code>.
+ The platform has the Win32 API type FTIME.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <code class="computeroutput"><span class="identifier">BOOST_HAS_GETSYSTEMTIMEASFILETIME</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ Platform
+ </p>
+ </td>
+<td>
+ <p>
+ The platform has the Win32 API GetSystemTimeAsFileTime.
                 </p>
               </td>
 </tr>

Modified: branches/release/libs/config/doc/html/boost_config/guidelines_for_boost_authors.html
==============================================================================
--- branches/release/libs/config/doc/html/boost_config/guidelines_for_boost_authors.html (original)
+++ branches/release/libs/config/doc/html/boost_config/guidelines_for_boost_authors.html 2011-10-10 07:50:55 EDT (Mon, 10 Oct 2011)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
 <title>Guidelines for Boost Authors</title>
 <link rel="stylesheet" href="../../../../../doc/src/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
+<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
 <link rel="home" href="../index.html" title="Boost.Config">
 <link rel="up" href="../index.html" title="Boost.Config">
 <link rel="prev" href="boost_macro_reference.html" title="Boost Macro Reference">

Modified: branches/release/libs/config/doc/html/boost_config/rationale.html
==============================================================================
--- branches/release/libs/config/doc/html/boost_config/rationale.html (original)
+++ branches/release/libs/config/doc/html/boost_config/rationale.html 2011-10-10 07:50:55 EDT (Mon, 10 Oct 2011)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
 <title>Rationale</title>
 <link rel="stylesheet" href="../../../../../doc/src/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
+<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
 <link rel="home" href="../index.html" title="Boost.Config">
 <link rel="up" href="../index.html" title="Boost.Config">
 <link rel="prev" href="guidelines_for_boost_authors.html" title="Guidelines for Boost Authors">

Modified: branches/release/libs/config/doc/html/index.html
==============================================================================
--- branches/release/libs/config/doc/html/index.html (original)
+++ branches/release/libs/config/doc/html/index.html 2011-10-10 07:50:55 EDT (Mon, 10 Oct 2011)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
 <title>Boost.Config</title>
 <link rel="stylesheet" href="../../../../doc/src/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
+<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
 <link rel="home" href="index.html" title="Boost.Config">
 <link rel="next" href="boost_config/boost_macro_reference.html" title="Boost Macro Reference">
 </head>
@@ -29,7 +29,7 @@
 <div><p class="copyright">Copyright &#169; 2001-2007 Beman Dawes, Vesa Karvonen, John
       Maddock</p></div>
 <div><div class="legalnotice">
-<a name="id830643"></a><p>
+<a name="id910601"></a><p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>
@@ -947,7 +947,7 @@
 </div>
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
-<td align="left"><p><small>Last revised: June 01, 2011 at 14:31:32 GMT</small></p></td>
+<td align="left"><p><small>Last revised: July 13, 2011 at 18:00:55 GMT</small></p></td>
 <td align="right"><div class="copyright-footer"></div></td>
 </tr></table>
 <hr>

Modified: branches/release/libs/config/doc/macro_reference.qbk
==============================================================================
--- branches/release/libs/config/doc/macro_reference.qbk (original)
+++ branches/release/libs/config/doc/macro_reference.qbk 2011-10-10 07:50:55 EDT (Mon, 10 Oct 2011)
@@ -348,7 +348,10 @@
 The platform has the functions `expm1`, `expm1f` and `expm1l` in `<math.h>`
 ]]
 [[`BOOST_HAS_FTIME`][Platform][
-The platform has the Win32 API `GetSystemTimeAsFileTime`.
+The platform has the Win32 API type FTIME.
+]]
+[[`BOOST_HAS_GETSYSTEMTIMEASFILETIME`][Platform][
+The platform has the Win32 API GetSystemTimeAsFileTime.
 ]]
 [[`BOOST_HAS_GETTIMEOFDAY`][Platform][
 The platform has the POSIX API `gettimeofday`.

Modified: branches/release/libs/config/test/all/Jamfile.v2
==============================================================================
--- branches/release/libs/config/test/all/Jamfile.v2 (original)
+++ branches/release/libs/config/test/all/Jamfile.v2 2011-10-10 07:50:55 EDT (Mon, 10 Oct 2011)
@@ -1,7 +1,7 @@
 #
 # Regression test Jamfile for boost configuration setup.
 # *** DO NOT EDIT THIS FILE BY HAND ***
-# This file was automatically generated on Wed Jun 1 21:44:56 2011
+# This file was automatically generated on Wed Jul 13 18:50:14 2011
 # by libs/config/tools/generate.cpp
 # Copyright John Maddock.
 # Use, modification and distribution are subject to the
@@ -40,6 +40,9 @@
 test-suite "BOOST_HAS_FTIME" :
 [ run ../has_ftime_pass.cpp ]
 [ compile-fail ../has_ftime_fail.cpp ] ;
+test-suite "BOOST_HAS_GETSYSTEMTIMEASFILETIME" :
+[ run ../has_getsystemtimeasfiletime_pass.cpp ]
+[ compile-fail ../has_getsystemtimeasfiletime_fail.cpp ] ;
 test-suite "BOOST_HAS_GETTIMEOFDAY" :
 [ run ../has_gettimeofday_pass.cpp ]
 [ compile-fail ../has_gettimeofday_fail.cpp ] ;

Modified: branches/release/libs/config/test/boost_has_ftime.ipp
==============================================================================
--- branches/release/libs/config/test/boost_has_ftime.ipp (original)
+++ branches/release/libs/config/test/boost_has_ftime.ipp 2011-10-10 07:50:55 EDT (Mon, 10 Oct 2011)
@@ -6,8 +6,8 @@
 // See http://www.boost.org/libs/config for most recent version.
 
 // MACRO: BOOST_HAS_FTIME
-// TITLE: GetSystemTimeAsFileTime
-// DESCRIPTION: The platform supports Win32 API GetSystemTimeAsFileTime.
+// TITLE: The platform has FTIME.
+// DESCRIPTION: The platform supports the Win32 API type FTIME.
 
 #include <windows.h>
 
@@ -18,7 +18,6 @@
 {
     // this is never called, it just has to compile:
    FILETIME ft;
- GetSystemTimeAsFileTime(&ft);
 }
 
 int test()

Modified: branches/release/libs/config/test/boost_no_decltype.ipp
==============================================================================
--- branches/release/libs/config/test/boost_no_decltype.ipp (original)
+++ branches/release/libs/config/test/boost_no_decltype.ipp 2011-10-10 07:50:55 EDT (Mon, 10 Oct 2011)
@@ -40,7 +40,11 @@
   int i;
   decltype(i) j;
   decltype(get_test_class()) k;
+ #ifndef _MSC_VER
+ // Although the VC++ decltype is buggy, we none the less enable support,
+ // so don't test the bugs for now!
   baz(get_test_class);
+ #endif
   return 0;
 }
 

Modified: branches/release/libs/config/test/config_info.cpp
==============================================================================
--- branches/release/libs/config/test/config_info.cpp (original)
+++ branches/release/libs/config/test/config_info.cpp 2011-10-10 07:50:55 EDT (Mon, 10 Oct 2011)
@@ -294,6 +294,22 @@
   PRINT_MACRO(_PGO_INSTRUMENT);
   PRINT_MACRO(__QMSPP_);
 
+ // Cray options:
+ PRINT_MACRO(_CRAYC);
+ PRINT_MACRO(_RELEASE);
+ PRINT_MACRO(cray);
+ PRINT_MACRO(CRAY);
+ PRINT_MACRO(CRAY1);
+ PRINT_MACRO(_CRAY1);
+ PRINT_MACRO(_CRAYMPP);
+ PRINT_MACRO(_CRAYT3E);
+ PRINT_MACRO(_CRAYIEEE);
+ PRINT_MACRO(_ADDR32);
+ PRINT_MACRO(_ADDR64);
+ PRINT_MACRO(_LD64);
+ PRINT_MACRO(_FASTMD);
+ PRINT_MACRO(_MAXVL);
+
   // misc compilers not covered so far:
   PRINT_MACRO(__USLC__);
   PRINT_MACRO(__DECCXX);
@@ -917,6 +933,7 @@
    PRINT_MACRO(BOOST_HAS_DIRENT_H);
    PRINT_MACRO(BOOST_HAS_EXPM1);
    PRINT_MACRO(BOOST_HAS_FTIME);
+ PRINT_MACRO(BOOST_HAS_GETSYSTEMTIMEASFILETIME);
    PRINT_MACRO(BOOST_HAS_GETTIMEOFDAY);
    PRINT_MACRO(BOOST_HAS_HASH);
    PRINT_MACRO(BOOST_HAS_LOG1P);
@@ -1084,6 +1101,7 @@
 
 
 
+
    // END GENERATED BLOCK
 
    PRINT_MACRO(BOOST_INTEL);

Modified: branches/release/libs/config/test/config_test.cpp
==============================================================================
--- branches/release/libs/config/test/config_test.cpp (original)
+++ branches/release/libs/config/test/config_test.cpp 2011-10-10 07:50:55 EDT (Mon, 10 Oct 2011)
@@ -1,4 +1,4 @@
-// This file was automatically generated on Wed Jun 1 21:44:56 2011
+// This file was automatically generated on Wed Jul 13 18:50:14 2011
 // by libs/config/tools/generate.cpp
 // Copyright John Maddock 2002-4.
 // Use, modification and distribution are subject to the
@@ -633,6 +633,11 @@
 #else
 namespace boost_has_ftime = empty_boost;
 #endif
+#ifdef BOOST_HAS_GETSYSTEMTIMEASFILETIME
+#include "boost_has_getsystemtimeasfiletime.ipp"
+#else
+namespace boost_has_getsystemtimeasfiletime = empty_boost;
+#endif
 #ifdef BOOST_HAS_GETTIMEOFDAY
 #include "boost_has_gettimeofday.ipp"
 #else
@@ -886,6 +891,11 @@
       std::cerr << "Failed test for BOOST_HAS_FTIME at: " << __FILE__ << ":" << __LINE__ << std::endl;
       ++error_count;
    }
+ if(0 != boost_has_getsystemtimeasfiletime::test())
+ {
+ std::cerr << "Failed test for BOOST_HAS_GETSYSTEMTIMEASFILETIME at: " << __FILE__ << ":" << __LINE__ << std::endl;
+ ++error_count;
+ }
    if(0 != boost_has_gettimeofday::test())
    {
       std::cerr << "Failed test for BOOST_HAS_GETTIMEOFDAY at: " << __FILE__ << ":" << __LINE__ << std::endl;


Boost-Commit list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk