Opened 12 years ago

Closed 12 years ago

#5079 closed Bugs (wontfix)

read_graphviz_new.cpp build failure on Solaris

Reported by: tropikhajma@… Owned by: Eric Niebler
Milestone: To Be Determined Component: xpressive
Version: Boost 1.45.0 Severity: Problem
Keywords: Cc:

Description

Trying to build boost 1.45 on Solaris 11 express with the Sun Studio 12.1 compiler fails with:

$ /opt/sunstudio12.1/bin/CC -library=no%Cstd -I/usr/include/stdcxx4/ansi -I/usr/include/stdcxx4 -I/opt/kde4/include/unicode -I/opt/kde4/include/layout -I/opt/kde4/include -lc -lpthread -lposix4 -lrt -mt -D_REENTRANT -DNDEBUG -KPIC -DEXTENSIONS=1 -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -D_XOPEN_SOURCE=500 -D_XPG5 -D_POSIX_PTHREAD_SEMANTICS -DSOLARIS -DSOLARIS10 -DBOOST_POSIX=1 -UBOOST_DISABLE_THREADS -DBOOST_HAS_THREADS=1 -DBOOST_HAS_PTHREADS=1 -UBOOST_NO_STD_ITERATOR_TRAITS -UBOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION -DHAVE_ICU=1 -DBOOST_HAS_ICU=1 -UBOOST_NO_STDC_NAMESPACE -DSUNPROCC_BOOST_COMPILE=1 -D_RWSTD_REENTRANT -DPy_TRACE_REFS -DPy_USING_UNICODE -DNDEBUG -DBOOST_ALL_NO_LIB=1 -DBOOST_GRAPH_DYN_LINK=1 -I"." -I"libs/graph/src" -c -o "bin.v2/libs/graph/build/sun/release/stdlib-sun-stdcxx/threading-multi/read_graphviz_new.o" "libs/graph/src/read_graphviz_new.cpp" "./boost/proto/detail/expr0.hpp", line 458: Error: A class with a reference member must have a user-defined constructor. "./boost/xpressive/regex_primitives.hpp", line 569: Where: While specializing "boost::proto::exprns_::expr<boost::proto::tag::assign, boost::proto::argsns_::list2<boost::xpressive::mark_tag&, const boost::xpressive::mark_tag&>, 2>". "./boost/xpressive/regex_primitives.hpp", line 569: Where: Specialized in non-template code. "./boost/xpressive/regex_primitives.hpp", line 569: Error: Expected an expression. "./boost/xpressive/regex_primitives.hpp", line 569: Error: Use ";" to terminate statements. 3 Error(s) detected.

I got the same result with Studio 12.2 I'm using stdcxx 4.2.1 and the environment from the kde-solaris project, which built boost 1.43 just fine.

Attaching the preprocessed sources

Change History (4)

comment:1 by Pavel Heimlich <tropikhajma@…>, 12 years ago

comment:2 by Jeremiah Willcock, 12 years ago

Component: Nonexpressive
Owner: set to Eric Niebler

comment:3 by Jeremiah Willcock, 12 years ago

Are you going to use the Graphviz functionality in Boost.Graph, or are you just trying to build other parts of Boost? If you don't need the functionality, try just putting #if 0 around the entire libs/graph/src/read_graphviz_new.cpp file.

comment:4 by Eric Niebler, 12 years ago

Resolution: wontfix
Status: newclosed

Sorry, xpressive does not support the sun compiler because it's too buggy. For instance, there is nothing wrong with a constructor-less class that has a reference member, AFAIK. Comeau accepts it in strict mode. Feel free to file a bug against the sun compiler.

Note: See TracTickets for help on using tickets.