|
Boost : |
From: Jeff Garland (jeff_at_[hidden])
Date: 2006-06-07 23:44:51
I'm having a problem compiling date-time on Linux/g++4.0 on the release
candidate branch. Looks like a change in the Range library has broken
the string_algo interface causing the issue. This date-time code is
unchanged and compiles fine under a rather old version of the CVS head.
I updated and compared string algorithms/date_time in my CVS head to
the 1.34 release candidate and they are the same. However, Range is
radically different in my 'old' CVS head compared to my current 1.34.
No telling why this hasn't broken the regression tests....
Thorsten ideas?
Jeff
Detailed output....
-----------------------------------------------------------------------
set -e
"g++-4.0" -c -DBOOST_DATE_TIME_POSIX_TIME_STD_CONFIG
-DBOOST_DATE_TIME_STATIC_LINK -DBOOST_ALL_NO_LIB -g -O0 -fno-inline
-Wall -ftemplate-depth-255 -I"../../../bin/boost/libs/date_time/test"
-I "/home/jeff/devTools/boost_rc_1_34" -o
"../../../bin/boost/libs/date_time/test/testtime_input_facet.test/gcc/debug/testtime_input_facet.o"
"posix_time/testtime_input_facet.cpp"
"/usr/bin/objcopy" --set-section-flags .debug_str=contents,debug
"../../../bin/boost/libs/date_time/test/testtime_input_facet.test/gcc/debug/testtime_input_facet.o"
...failed gcc-C++-action
../../../bin/boost/libs/date_time/test/testtime_input_facet.test/gcc/debug/testtime_input_facet.o...
...skipped
<@boost!libs!date_time!test/testtime_input_facet.test/gcc/debug>testtime_input_facet
for lack of
<@boost!libs!date_time!test/testtime_input_facet.test/gcc/debug>testtime_input_facet.o...
gcc-C++-action
../../../bin/boost/libs/date_time/test/testtime_facet.test/gcc/debug/testtime_facet.o
/home/jeff/devTools/boost_rc_1_34/boost/range/const_iterator.hpp: In
instantiation of boost::range_const_iterator<const char*>:
/home/jeff/devTools/boost_rc_1_34/boost/algorithm/string/replace.hpp:653:
instantiated from void boost::algorithm::replace_all(SequenceT&,
const Range1T&, const Range2T&) [with SequenceT =
std::basic_string<char, std::char_traits<char>, std::allocator<char> >,
Range1T = const char*, Range2T = std::basic_string<char,
std::char_traits<char>, std::allocator<char> >]
/home/jeff/devTools/boost_rc_1_34/boost/date_time/time_facet.hpp:255:
instantiated from OutItrT boost::date_time::time_facet<time_type,
CharT, OutItrT>::put(OutItrT, std::ios_base&, typename
boost::date_time::date_facet<typename time_type::date_type, CharT,
OutItrT>::char_type, const time_type&) const [with time_type =
boost::posix_time::ptime, CharT = char, OutItrT =
std::ostreambuf_iterator<char, std::char_traits<char> >]
/home/jeff/devTools/boost_rc_1_34/boost/date_time/posix_time/posix_time_io.hpp:51:
instantiated from std::basic_ostream<_CharT, _Traits>&
boost::posix_time::operator<<(std::basic_ostream<_CharT, _Traits>&,
const boost::posix_time::ptime&) [with CharT = char, TraitsT =
std::char_traits<char>]
posix_time/testtime_facet.cpp:59: instantiated from here
/home/jeff/devTools/boost_rc_1_34/boost/range/const_iterator.hpp:37:
error: const char* is not a class, struct, or union type
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
/home/jeff/devTools/boost_rc_1_34/boost/algorithm/string/replace.hpp: In
function void boost::algorithm::replace_all(SequenceT&, const Range1T&,
const Range2T&) [with SequenceT = std::basic_string<char,
std::char_traits<char>, std::allocator<char> >, Range1T = const char*,
Range2T = std::basic_string<char, std::char_traits<char>,
std::allocator<char> >]:
/home/jeff/devTools/boost_rc_1_34/boost/date_time/time_facet.hpp:255:
instantiated from OutItrT boost::date_time::time_facet<time_type,
CharT, OutItrT>::put(OutItrT, std::ios_base&, typename
boost::date_time::date_facet<typename time_type::date_type, CharT,
OutItrT>::char_type, const time_type&) const [with time_type =
boost::posix_time::ptime, CharT = char, OutItrT =
std::ostreambuf_iterator<char, std::char_traits<char> >]
/home/jeff/devTools/boost_rc_1_34/boost/date_time/posix_time/posix_time_io.hpp:51:
instantiated from std::basic_ostream<_CharT, _Traits>&
boost::posix_time::operator<<(std::basic_ostream<_CharT, _Traits>&,
const boost::posix_time::ptime&) [with CharT = char, TraitsT =
std::char_traits<char>]
posix_time/testtime_facet.cpp:59: instantiated from here
/home/jeff/devTools/boost_rc_1_34/boost/algorithm/string/replace.hpp:653:
error: no matching function for call to first_finder(const char* const&)
/home/jeff/devTools/boost_rc_1_34/boost/algorithm/string/replace.hpp: In
function void boost::algorithm::replace_all(SequenceT&, const Range1T&,
const Range2T&) [with SequenceT = std::basic_string<char,
std::char_traits<char>, std::allocator<char> >, Range1T = const char*,
Range2T = char [1]]:
/home/jeff/devTools/boost_rc_1_34/boost/date_time/time_facet.hpp:266:
instantiated from OutItrT boost::date_time::time_facet<time_type,
CharT, OutItrT>::put(OutItrT, std::ios_base&, typename
boost::date_time::date_facet<typename time_type::date_type, CharT,
OutItrT>::char_type, const time_type&) const [with time_type =
boost::posix_time::ptime, CharT = char, OutItrT =
std::ostreambuf_iterator<char, std::char_traits<char> >]
/home/jeff/devTools/boost_rc_1_34/boost/date_time/posix_time/posix_time_io.hpp:51:
instantiated from std::basic_ostream<_CharT, _Traits>&
boost::posix_time::operator<<(std::basic_ostream<_CharT, _Traits>&,
const boost::posix_time::ptime&) [with CharT = char, TraitsT =
std::char_traits<char>]
posix_time/testtime_facet.cpp:59: instantiated from here
/home/jeff/devTools/boost_rc_1_34/boost/algorithm/string/replace.hpp:653:
error: no matching function for call to first_finder(const char* const&)
/home/jeff/devTools/boost_rc_1_34/boost/algorithm/string/erase.hpp: In
function void boost::algorithm::erase_all(SequenceT&, const RangeT&)
[with SequenceT = std::basic_string<char, std::char_traits<char>,
std::allocator<char> >, RangeT = const char*]:
/home/jeff/devTools/boost_rc_1_34/boost/date_time/time_facet.hpp:377:
instantiated from OutItrT boost::date_time::time_facet<time_type,
CharT, OutItrT>::put(OutItrT, std::ios_base&, typename
boost::date_time::date_facet<typename time_type::date_type, CharT,
OutItrT>::char_type, const time_type&) const [with time_type =
boost::posix_time::ptime, CharT = char, OutItrT =
std::ostreambuf_iterator<char, std::char_traits<char> >]
/home/jeff/devTools/boost_rc_1_34/boost/date_time/posix_time/posix_time_io.hpp:51:
instantiated from std::basic_ostream<_CharT, _Traits>&
boost::posix_time::operator<<(std::basic_ostream<_CharT, _Traits>&,
const boost::posix_time::ptime&) [with CharT = char, TraitsT =
std::char_traits<char>]
posix_time/testtime_facet.cpp:59: instantiated from here
/home/jeff/devTools/boost_rc_1_34/boost/algorithm/string/erase.hpp:592:
error: no matching function for call to first_finder(const char* const&)
/home/jeff/devTools/boost_rc_1_34/boost/algorithm/string/replace.hpp: In
function void boost::algorithm::replace_all(SequenceT&, const Range1T&,
const Range2T&) [with SequenceT = std::basic_string<char,
std::char_traits<char>, std::allocator<char> >, Range1T = const char*,
Range2T = const char*]:
/home/jeff/devTools/boost_rc_1_34/boost/date_time/time_facet.hpp:400:
instantiated from OutItrT boost::date_time::time_facet<time_type,
CharT, OutItrT>::put(OutItrT, std::ios_base&, typename
boost::date_time::date_facet<typename time_type::date_type, CharT,
OutItrT>::char_type, const typename time_type::time_duration_type&)
const [with time_type = boost::posix_time::ptime, CharT = char, OutItrT
= std::ostreambuf_iterator<char, std::char_traits<char> >]
/home/jeff/devTools/boost_rc_1_34/boost/date_time/posix_time/posix_time_io.hpp:190:
instantiated from std::basic_ostream<_CharT, _Traits>&
boost::posix_time::operator<<(std::basic_ostream<_CharT, _Traits>&,
const boost::posix_time::time_duration&) [with CharT = char, Traits =
std::char_traits<char>]
posix_time/testtime_facet.cpp:62: instantiated from here
/home/jeff/devTools/boost_rc_1_34/boost/algorithm/string/replace.hpp:653:
error: no matching function for call to first_finder(const char* const&)
/home/jeff/devTools/boost_rc_1_34/boost/range/const_iterator.hpp: At
global scope:
/home/jeff/devTools/boost_rc_1_34/boost/range/const_iterator.hpp: In
instantiation of boost::range_const_iterator<const wchar_t*>:
/home/jeff/devTools/boost_rc_1_34/boost/algorithm/string/replace.hpp:653:
instantiated from void boost::algorithm::replace_all(SequenceT&,
const Range1T&, const Range2T&) [with SequenceT =
std::basic_string<wchar_t, std::char_traits<wchar_t>,
std::allocator<wchar_t> >, Range1T = const wchar_t*, Range2T =
std::basic_string<wchar_t, std::char_traits<wchar_t>,
std::allocator<wchar_t> >]
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk