[Boost-bugs] [Boost C++ Libraries] #10571: type_index tests configuration issues for Oracle Studio c++

Subject: [Boost-bugs] [Boost C++ Libraries] #10571: type_index tests configuration issues for Oracle Studio c++
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2014-10-01 22:07:51


#10571: type_index tests configuration issues for Oracle Studio c++
------------------------------+----------------------------
 Reporter: angela.xie@… | Owner: chris_kohlhoff
     Type: Bugs | Status: new
Milestone: To Be Determined | Component: asio
  Version: Boost 1.56.0 | Severity: Problem
 Keywords: sparc |
------------------------------+----------------------------
 Problems:
 1.type_index library tests failed to compile with error message
 "../../../boost/type_index/stl_type_index.hpp", line 165: Error: abi is
 not defined." with studio 12.4 (c++) on Solaris 11.2.

 2.nortti test flags are incorrect for studio c++.

 Solution for problem 1:
 in boost/type_index/stl_type_index.hpp
 42:#ifdef __GNUC__
 43 # include <cxxabi.h> //
 abi::__cxa_demangle
 44 #endif

 replace line 42 with
 #if defined __GNUC__ || (defined(__SUNPRO_CC) && __SUNPRO_CC_COMPAT!=5)


 154:#if defined(_MSC_VER)
 155: std::string ret = data_->name();
 156: std::string::size_type pos_beg = ret.find(cvr_saver_name);
 157: if (pos_beg == std::string::npos) {
 158: return ret;
 159: }

 replace line 154 with
 #if defined(_MSC_VER) || (defined(__SUNPRO_CC) && (__SUNPRO_CC_COMPAT==5))

 in boost/type_index/detail/compile_time_type_info.hpp
 120: #elif defined(__PRETTY_FUNCTION__) \
 121: || defined(__GNUC__) \
 122: || (defined(__MWERKS__) && (__MWERKS__ >= 0x3000)) \
 123: || (defined(__ICC) && (__ICC >= 600)) \
 124: || defined(__ghs__) \
 125: || defined(__DMC__)

 insert "|| defined(__SUNPRO_CC) \" into between line 121, 122
                 || defined(__GNUC__) \
                 || defined(__SUNPRO_CC) \
                 || (defined(__MWERKS__) && (__MWERKS__ >= 0x3000)) \


 solution for problem 2:
 add -features=no%rtti for nortti test

-- 
Ticket URL: <https://svn.boost.org/trac/boost/ticket/10571>
Boost C++ Libraries <http://www.boost.org/>
Boost provides free peer-reviewed portable C++ source libraries.

This archive was generated by hypermail 2.1.7 : 2017-02-16 18:50:17 UTC