[Boost-bugs] [Boost C++ Libraries] #1758: Boost 1.35 fails to build under gcc 3.4 unix Solaris

Subject: [Boost-bugs] [Boost C++ Libraries] #1758: Boost 1.35 fails to build under gcc 3.4 unix Solaris
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2008-04-02 17:06:36


#1758: Boost 1.35 fails to build under gcc 3.4 unix Solaris
--------------------------------------+-------------------------------------
 Reporter: jgottman_at_[hidden] | Owner: pdimov
     Type: Patches | Status: new
Milestone: Boost 1.36.0 | Component: smart_ptr
  Version: Boost 1.35.0 | Severity: Showstopper
 Keywords: |
--------------------------------------+-------------------------------------
 When I tried to build the boost libraries under gcc 3.4 unix Solaris, I
 repeatedly got an error message that looked like


 {{{
 /var/tmp//ccdt31Ke.s: Assembler messages:
 /var/tmp//ccdt31Ke.s:619: Error: Architecture mismatch on "cas".
 /var/tmp//ccdt31Ke.s:619: (Requires v9|v9a|v9b; requested architecture is
 v8.)
 }}}


 I traced the problem to the following lines in
 <detail\sp_counted_base.hpp>:

 {{{
 #elif defined(__GNUC__) && ( defined( __sparcv8 ) || defined( __sparcv9 )
 )

 # include <boost/detail/sp_counted_base_gcc_sparc.hpp>
 }}}

 which call the following command:

 {{{
     __asm__ __volatile__( "cas %0, %2, %1"
                         : "+m" (*dest_), "+r" (swap_)
                         : "r" (compare_)
                         : "memory" );
 }}}

 It looks like __sparcv8 is not sufficient to call this command, only
 __sparcv9 is. Note also the <detail/sp_counted_base_solaris.hpp> is
 apparantly never included.

 Joe Gottman

--
Ticket URL: <http://svn.boost.org/trac/boost/ticket/1758>
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:49:57 UTC