Subject: [Boost-bugs] [Boost C++ Libraries] #11973: Can't work with date_time library
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2016-02-10 11:42:13
#11973: Can't work with date_time library
------------------------------+-------------------------
Reporter: markus.zaczek@⦠| Owner: az_sw_dude
Type: Support Requests | Status: new
Milestone: To Be Determined | Component: date_time
Version: Boost 1.60.0 | Severity: Showstopper
Keywords: |
------------------------------+-------------------------
Whenever i instantiate an object of the boost::date_time library i get an
error in my application. I'm using VC7.1 compiler. To be sure that i'm not
using anything wrong i also tried to compile the shipped tutorial file:
"boost_1_60_0\libs\date_time\example\tutorial\io_tutorial.cpp". The error
stays the same.
Operating system:
Windows Server 2008 R2 Standard
Here is what i did:
b2 link=shared threading=multi variant=release
cl /Od /I "D:\tools\\boost_1_60_0" /D "WIN32" /D "_DEBUG" /D "_WINDLL"
/Gm /EHsc /RTC1 /MDd /GS /GR /Fo"Debug/" /W3 /nologo /c /Wp64 /TP
io_tutorial.cpp >> error.log
In file: error.log
io_tutorial.cpp
D:\tools\\boost_1_60_0\boost\range\mutable_iterator.hpp(37) : error C2146:
Syntaxfehler: Fehlendes ';' vor Bezeichner 'type'
D:\tools\\boost_1_60_0\boost\range\mutable_iterator.hpp(43): Siehe
Verweis auf Instanziierung der kompilierten Klassenvorlage
'boost::range_detail::extract_iterator<C>'
with
[
C=boost::remove_reference<boost::range_iterator<std::allocator<std::string>::value_type>::type>::type
]
D:\tools\\boost_1_60_0\boost\range\has_range_iterator.hpp(27):
Siehe Verweis auf Instanziierung der kompilierten Klassenvorlage
'boost::range_detail::range_mutable_iterator<C>'
with
[
C=boost::remove_reference<boost::range_iterator<std::allocator<std::string>::value_type>::type>::type
]
D:\tools\\boost_1_60_0\boost\range\has_range_iterator.hpp(27):
Siehe Verweis auf Instanziierung der kompilierten Klassenvorlage
'boost::range_detail::has_type_impl_<T>'
with
[
T=boost::range_detail::range_mutable_iterator<boost::remove_reference<boost::range_iterator<std::allocator<std::string>::value_type>::type>::type>
]
D:\tools\\boost_1_60_0\boost\mpl\eval_if.hpp(41): Siehe Verweis
auf Instanziierung der kompilierten Klassenvorlage
'boost::range_detail::has_type<T,fallback_>'
with
[
T=boost::range_detail::range_mutable_iterator<boost::remove_reference<boost::range_iterator<std::allocator<std::string>::value_type>::type>::type>,
fallback_=boost::mpl::bool_<false>
]
D:\tools\\boost_1_60_0\boost\range\has_range_iterator.hpp(73):
Siehe Verweis auf Instanziierung der kompilierten Klassenvorlage
'boost::mpl::eval_if<C,F1,F2>'
with
[
C=boost::is_const<boost::remove_reference<boost::range_iterator<std::allocator<std::string>::value_type>::type>::type>,
F1=boost::range_detail::has_type<boost::range_detail::range_const_iterator<boost::remove_reference<boost::range_iterator<std::allocator<std::string>::value_type>::type>::type>,boost::mpl::bool_<false>>,
F2=boost::range_detail::has_type<boost::range_detail::range_mutable_iterator<boost::remove_reference<boost::range_iterator<std::allocator<std::string>::value_type>::type>::type>,boost::mpl::bool_<false>>
]
D:\tools\\boost_1_60_0\boost\range\has_range_iterator.hpp(73):
Siehe Verweis auf Instanziierung der kompilierten Klassenvorlage
'boost::range_detail::has_range_iterator_impl<T>'
with
[
T=boost::remove_reference<boost::range_iterator<std::allocator<std::string>::value_type>::type>::type
]
D:\tools\\boost_1_60_0\boost\mpl\if.hpp(63): Siehe Verweis auf
Instanziierung der kompilierten Klassenvorlage
'boost::has_range_iterator<T>'
with
[
T=boost::range_iterator<std::allocator<std::string>::value_type>::type
]
D:\tools\\boost_1_60_0\boost\mpl\eval_if.hpp(40): Siehe Verweis
auf Instanziierung der kompilierten Klassenvorlage
'boost::mpl::if_<T1,T2,T3>'
with
[
T1=boost::has_range_iterator<boost::range_iterator<std::allocator<std::string>::value_type>::type>,
T2=boost::range_iterator<boost::range_iterator<std::allocator<std::string>::value_type>::type>,
T3=boost::mpl::identity<void>
]
D:\tools\\boost_1_60_0\boost\range\iterator_range_core.hpp(451):
Siehe Verweis auf Instanziierung der kompilierten Klassenvorlage
'boost::mpl::eval_if<C,F1,F2>'
with
[
C=boost::has_range_iterator<boost::range_iterator<std::allocator<std::string>::value_type>::type>,
F1=boost::range_iterator<boost::range_iterator<std::allocator<std::string>::value_type>::type>,
F2=boost::mpl::identity<void>
]
D:\tools\\boost_1_60_0\boost\mpl\aux_\preprocessed\plain\and.hpp(25):
Siehe Verweis auf Instanziierung der kompilierten Klassenvorlage
'boost::iterator_range<IteratorT>::is_compatible_range_<Source>'
with
[
IteratorT=boost::range_iterator<std::allocator<std::string>::value_type>::type,
Source=boost::range_iterator<std::allocator<std::string>::value_type>::type
]
D:\tools\\boost_1_60_0\boost\mpl\aux_\preprocessed\plain\and.hpp(55):
Siehe Verweis auf Instanziierung der kompilierten Klassenvorlage
'boost::mpl::aux::and_impl<C_,T1,T2,T3,T4>'
with
[
C_=true,
T1=boost::iterator_range<boost::range_iterator<std::allocator<std::string>::value_type>::type>::is_compatible_range_<boost::range_iterator<std::allocator<std::string>::value_type>::type>,
T2=boost::mpl::true_,
T3=boost::mpl::true_,
T4=boost::mpl::true_
]
D:\tools\\boost_1_60_0\boost\range\iterator_range_core.hpp(468):
Siehe Verweis auf Instanziierung der kompilierten Klassenvorlage
'boost::mpl::and_<T1,T2>'
with
[
T1=boost::mpl::not_<boost::is_convertible<boost::range_iterator<boost::iterator_range<boost::range_iterator<std::allocator<std::string>::value_type>::type>>::type,boost::iterator_range_detail::iterator_range_base<boost::range_iterator<std::allocator<std::string>::value_type>::type,boost::iterators::incrementable_traversal_tag>::iterator>>,
T2=boost::iterator_range<boost::range_iterator<std::allocator<std::string>::value_type>::type>::is_compatible_range_<boost::range_iterator<std::allocator<std::string>::value_type>::type>
]
D:\tools\\boost_1_60_0\boost\core\enable_if.hpp(41): Siehe Verweis
auf Instanziierung der kompilierten Klassenvorlage
'boost::iterator_range<IteratorT>::is_compatible_range<Source>'
with
[
IteratorT=boost::range_iterator<std::allocator<std::string>::value_type>::type,
Source=boost::range_iterator<std::allocator<std::string>::value_type>::type
]
D:\tools\\boost_1_60_0\boost\algorithm\string\detail\finder.hpp(68): Siehe
Verweis auf Instanziierung der kompilierten Klassenvorlage
'boost::enable_if<Cond,T>'
with
[
Cond=boost::iterator_range<boost::range_iterator<std::allocator<std::string>::value_type>::type>::is_compatible_range<boost::range_iterator<std::allocator<std::string>::value_type>::type>,
T=void
]
D:\tools\\boost_1_60_0\boost\algorithm\string\find_format.hpp(272): Siehe
Verweis auf Instanziierung der kompilierten Funktionsvorlage
'boost::iterator_range<IteratorT>
boost::algorithm::detail::first_finderF<SearchIteratorT,PredicateT>::operator
()<boost::range_iterator<C>::type>(ForwardIteratorT,ForwardIteratorT)
const'
with
[
IteratorT=boost::range_iterator<std::allocator<std::string>::value_type>::type,
SearchIteratorT=const
boost::date_time::date_facet<boost::gregorian::date,char>::char_type *,
PredicateT=boost::algorithm::is_equal,
C=std::allocator<std::string>::value_type,
ForwardIteratorT=boost::range_iterator<std::allocator<std::string>::value_type>::type
]
D:\tools\\boost_1_60_0\boost\algorithm\string\replace.hpp(657):
Siehe Verweis auf Instanziierung der kompilierten Funktionsvorlage 'void
boost::algorithm::find_format_all<SequenceT,boost::algorithm::detail::first_finderF<SearchIteratorT,PredicateT>,boost::algorithm::detail::const_formatF<RangeT>>(SequenceT
&,FinderT,FormatterT)'
with
[
SequenceT=boost::date_time::date_facet<boost::gregorian::date,char>::string_type,
SearchIteratorT=const
boost::date_time::date_facet<boost::gregorian::date,char>::char_type *,
PredicateT=boost::algorithm::is_equal,
RangeT=boost::iterator_range<std::basic_string<char,std::char_traits<char>,std::allocator<char>>::const_iterator>,
FinderT=boost::algorithm::detail::first_finderF<const
boost::date_time::date_facet<boost::gregorian::date,char>::char_type
*,boost::algorithm::is_equal>,
FormatterT=boost::algorithm::detail::const_formatF<boost::iterator_range<std::basic_string<char,std::char_traits<char>,std::allocator<char>>::const_iterator>>
]
D:\tools\\boost_1_60_0\boost\date_time\date_facet.hpp(322): Siehe
Verweis auf Instanziierung der kompilierten Funktionsvorlage 'void
boost::algorithm::replace_all<boost::date_time::date_facet<date_type,CharT>::string_type,const
boost::date_time::date_facet<date_type,CharT>::char_type[3],std::allocator<_Ty>::value_type>(SequenceT
&,Range1T (&),const Range2T &)'
with
[
date_type=boost::gregorian::date,
CharT=char,
_Ty=std::string,
SequenceT=boost::date_time::date_facet<boost::gregorian::date,char>::string_type,
Range1T=const
boost::date_time::date_facet<boost::gregorian::date,char>::char_type [3],
Range2T=std::allocator<std::string>::value_type
]
D:\tools\\boost_1_60_0\boost\date_time\date_facet.hpp(317): Bei
der Kompilierung der Memberfunktion
'std::ostreambuf_iterator<_Elem,_Traits>
boost::date_time::date_facet<date_type,CharT>::do_put_tm(OutItrT,std::ios_base
&,boost::date_time::date_facet<date_type,CharT>::char_type,const tm
&,boost::date_time::date_facet<date_type,CharT>::string_type) const' der
Klassenvorlage
with
[
_Elem=char,
_Traits=std::char_traits<char>,
date_type=boost::gregorian::date,
CharT=char,
OutItrT=std::ostreambuf_iterator<char,std::char_traits<char>>
]
D:\tools\\boost_1_60_0\boost\date_time\time_facet.hpp(204): Siehe
Verweis auf Instanziierung der kompilierten Klassenvorlage
'boost::date_time::date_facet<date_type,CharT>'
with
[
date_type=boost::gregorian::date,
CharT=char
]
io_tutorial.cpp(27): Siehe Verweis auf Instanziierung der
kompilierten Klassenvorlage
'boost::date_time::time_facet<time_type,CharT>'
with
[
time_type=boost::local_time::local_date_time,
CharT=char
]
D:\tools\\boost_1_60_0\boost\range\mutable_iterator.hpp(37) : error C3254:
'boost::range_detail::extract_iterator<C>': Die Klasse enthâlt die
explizite Å¡berschreibung '__ctor', wird jedoch von keiner Schnittstelle
abgeleitet, die die Funktionsdeklaration enthâlt
with
[
C=boost::remove_reference<boost::range_iterator<std::allocator<std::string>::value_type>::type>::type
]
D:\tools\\boost_1_60_0\boost\range\mutable_iterator.hpp(37) : error C2838:
'__ctor': Unzulâssiger vollstândig angegebener Name in Elementdeklaration
D:\tools\\boost_1_60_0\boost\range\mutable_iterator.hpp(37) : error C2461:
'boost::range_detail::extract_iterator<C>': Formale Parameterliste fÂr
Konstruktor fehlt
with
[
C=boost::remove_reference<boost::range_iterator<std::allocator<std::string>::value_type>::type>::type
]
D:\tools\\boost_1_60_0\boost\range\mutable_iterator.hpp(37) : error C2955:
'boost::type': fÂr die Verwendung einer Vorlagenklasse ist eine Vorlagen-
Argumentliste erforderlich
D:\tools\\boost_1_60_0\boost\type.hpp(14): Siehe Deklaration von
'boost::type'
D:\tools\\boost_1_60_0\boost\range\mutable_iterator.hpp(37) : fatal error
C1903: Weiterverarbeitung nach vorherigem Fehler nicht mâglich;
Kompilierung wird abgebrochen.
-- Ticket URL: <https://svn.boost.org/trac/boost/ticket/11973> 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:19 UTC