[Boost-bugs] [Boost C++ Libraries] #4068: Borland also needs private/public workaround in boost::exception

Subject: [Boost-bugs] [Boost C++ Libraries] #4068: Borland also needs private/public workaround in boost::exception
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2010-04-05 14:21:26


#4068: Borland also needs private/public workaround in boost::exception
--------------------------+-------------------------------------------------
 Reporter: niels_dekker | Owner: emildotchevski
     Type: Patches | Status: new
Milestone: Boost 1.43.0 | Component: exception
  Version: Boost 1.42.0 | Severity: Problem
 Keywords: |
--------------------------+-------------------------------------------------
 Borland/CodeGear currently won't compile boost::exception, because it
 cannot deal with the friend declarations of exception_detail::set_info,
 inside the boost::exception class definition. So please consider applying
 the attached patch. It leaves the data of boost::exception public, when
 {{{__BORLANDC__<=0x621}}}, just like you did for other compilers.

 Note: I have no idea whether the workaround is still needed when
 {{{__BORLANDC__>0x621}}}. It's just that I only tested
 Embarcadero/CodeGear C++ 6.21. But older Borland versions certainly have
 the same problem. For example,
 http://www.boost.org/development/tests/trunk/output/siliconman-boost-
 bin-v2-libs-exception-test-all_hpp_test-test-borland-5-9-3-debug.html
 says:
 {{{
 ..\libs\exception\test\all_hpp_test.cpp:
 Error E2401 ..\boost/exception/exception.hpp 228: Invalid template
 argument list
 Error E2401 ..\boost/exception/exception.hpp 231: Invalid template
 argument list
 Error E2401 ..\boost/exception/exception.hpp 234: Invalid template
 argument list
 Error E2401 ..\boost/exception/exception.hpp 237: Invalid template
 argument list
 Error E2109 ..\boost/exception/exception.hpp 337: Not an allowed type
 Error E2228 ..\boost/exception/exception.hpp 337: Too many error or
 warning messages
 *** 6 errors in Compile ***
 }}}

-- 
Ticket URL: <https://svn.boost.org/trac/boost/ticket/4068>
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:02 UTC