From b9e514c5be2328c3331a66f135750809365c4794 Mon Sep 17 00:00:00 2001 From: John Maddock Date: Thu, 24 Aug 2006 10:59:16 +0000 Subject: [PATCH] Removed aCC workarounds that are no longer necessary. Updated aCC config. [SVN r34937] --- include/boost/config/compiler/hp_acc.hpp | 6 +++--- include/boost/config/platform/hpux.hpp | 25 ++++++++++++++++++++---- 2 files changed, 24 insertions(+), 7 deletions(-) diff --git a/include/boost/config/compiler/hp_acc.hpp b/include/boost/config/compiler/hp_acc.hpp index 3d05ba56..a5de57a1 100644 --- a/include/boost/config/compiler/hp_acc.hpp +++ b/include/boost/config/compiler/hp_acc.hpp @@ -27,12 +27,14 @@ # define BOOST_NO_USING_DECLARATION_OVERLOADS_FROM_TYPENAME_BASE #endif -#if (__HP_aCC <= 33900) || !defined(BOOST_STRICT_CONFIG) +// This version check is way to high, but we don't know the right one to use: +#if (__HP_aCC < 60700) # define BOOST_NO_UNREACHABLE_RETURN_DETECTION # define BOOST_NO_TEMPLATE_TEMPLATES # define BOOST_NO_SWPRINTF # define BOOST_NO_DEPENDENT_TYPES_IN_TEMPLATE_VALUE_PARAMETERS # define BOOST_NO_IS_ABSTRACT +# define BOOST_NO_MEMBER_TEMPLATE_FRIENDS // std lib config should set this one already: //# define BOOST_NO_STD_ALLOCATOR #endif @@ -47,8 +49,6 @@ # define BOOST_NO_MEMBER_TEMPLATE_KEYWORD #endif -#define BOOST_NO_MEMBER_TEMPLATE_FRIENDS - #define BOOST_COMPILER "HP aCC version " BOOST_STRINGIZE(__HP_aCC) // diff --git a/include/boost/config/platform/hpux.hpp b/include/boost/config/platform/hpux.hpp index fa773aa7..fd9102e4 100644 --- a/include/boost/config/platform/hpux.hpp +++ b/include/boost/config/platform/hpux.hpp @@ -2,6 +2,7 @@ // (C) Copyright Jens Maurer 2001 - 2003. // (C) Copyright David Abrahams 2002. // (C) Copyright Toon Knapen 2003. +// (C) Copyright Boris Gubenko 2006. // Use, modification and distribution are subject to 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) @@ -15,11 +16,15 @@ // In principle, HP-UX has a nice under the name // However, it has the following problem: // Use of UINT32_C(0) results in "0u l" for the preprocessed source -// (verifyable with gcc 2.95.3, assumed for HP aCC) -// #define BOOST_HAS_STDINT_H +// (verifyable with gcc 2.95.3) +#if (defined(__GNUC__) && (__GNUC__ >= 3)) || defined(__HP_aCC) +# define BOOST_HAS_STDINT_H +#endif -#define BOOST_NO_SWPRINTF -#define BOOST_NO_CWCTYPE +#if !(defined(__HP_aCC) || !defined(_INCLUDE__STDC_A1_SOURCE)) +# define BOOST_NO_SWPRINTF +# define BOOST_NO_CWCTYPE +#endif #if defined(__GNUC__) # if (__GNUC__ < 3) || ((__GNUC__ == 3) && (__GNUC_MINOR__ < 3)) @@ -30,6 +35,9 @@ # define BOOST_HAS_THREADS # define BOOST_HAS_PTHREADS # endif +#elif defined(__HP_aCC) && !defined(BOOST_DISABLE_THREADS) +//# define BOOST_HAS_THREADS +# define BOOST_HAS_PTHREADS #endif // boilerplate code: @@ -64,5 +72,14 @@ #ifndef BOOST_HAS_SIGACTION # define BOOST_HAS_SIGACTION #endif +#ifndef BOOST_HAS_NRVO +# define BOOST_HAS_NRVO +#endif +#ifndef BOOST_HAS_LOG1P +# define BOOST_HAS_LOG1P +#endif +#ifndef BOOST_HAS_EXPM1 +# define BOOST_HAS_EXPM1 +#endif