date-time out of whack?

The program that causes this error used to compile (until a few days ago) I'm using the cvs HEAD c:\boost\include\boost-1_32\boost\iterator\iterator_facade.hpp(326) : error C2664: 'boost::implicit_cast' : cannot convert parameter 1 from 'const std::string *__w64 ' to 'boost::mpl::identity::type' with [ T=boost::detail::operator_arrow_result,std::basic_string,std::allocator>::const_iterator,std::string>,std::string,boost::detail::minimum_category::type>::type,const std::string &>::value_type,boost::iterator_facade,std::basic_string,std::allocator>::const_iterator,std::string>,std::string,boost::detail::minimum_category::type>::type,const std::string &>::reference,boost::iterator_facade,std::basic_string,std::allocator>::const_iterator,std::string>,std::string,boost::detail::minimum_category::type>::type,const std::string &>::pointer>::type ] Conversion loses qualifiers c:\boost\include\boost-1_32\boost\iterator\iterator_facade.hpp(325) : while compiling class-template member function 'boost::detail::operator_arrow_result::type boost::detail::operator_arrow_result::make(Reference)' with [ ValueType=boost::iterator_facade,std::basic_string,std::allocator>::const_iterator,std::string>,std::string,boost::detail::minimum_category::type>::type,const std::string &>::value_type, Reference=boost::iterator_facade,std::basic_string,std::allocator>::const_iterator,std::string>,std::string,boost::detail::minimum_category::type>::type,const std::string &>::reference, Pointer=boost::iterator_facade,std::basic_string,std::allocator>::const_iterator,std::string>,std::string,boost::detail::minimum_category::type>::type,const std::string &>::pointer ] c:\boost\include\boost-1_32\boost\iterator\iterator_facade.hpp(642) : see reference to class template instantiation 'boost::detail::operator_arrow_result' being compiled with [ ValueType=boost::iterator_facade,std::basic_string,std::allocator>::const_iterator,std::string>,std::string,boost::detail::minimum_category::type>::type,const std::string &>::va lue_type, Reference=boost::iterator_facade,std::basic_string,std::allocator>::const_iterator,std::string>,std::string,boost::detail::minimum_category::type>::type,const std::string &>::reference, Pointer=boost::iterator_facade,std::basic_string,std::allocator>::const_iterator,std::string>,std::string,boost::detail::minimum_category::type>::type,const std::string &>::pointer ] c:\boost\include\boost-1_32\boost\token_iterator.hpp(41) : see reference to class template instantiation 'boost::iterator_facade' being compiled with [ Derived=boost::token_iterator,std::basic_string,std::allocator>::const_iterator,std::string>, Value=std::string, CategoryOrTraversal=boost::detail::minimum_category::type>::type, Reference=const std::string & ] c:\boost\include\boost-1_32\boost\date_time\date_parsing.hpp(119) : see reference to class template instantiation 'boost::token_iterator' being compiled with [ TokenizerFunc=boost::char_delimiters_separator, Iterator=std::basic_string,std::allocator>::const_iterator, Type=std::string ] c:\boost\include\boost-1_32\boost\date_time\gregorian\parsers.hpp(24) : see reference to function template instantiation 'date_type boost::date_time::parse_date(const std::string &,int)' being compiled with [ date_type=boost::gregorian::date ] Victor A. Wagner Jr. http://rudbek.com The five most dangerous words in the English language: "There oughta be a law"

Victor A. Wagner Jr. wrote:
The program that causes this error used to compile (until a few days ago) I'm using the cvs HEAD
c:\boost\include\boost-1_32\boost\iterator\iterator_facade.hpp(326) : error C2664: 'boost::implicit_cast' : cannot convert parameter 1 from 'const std::string *__w64 ' to 'boost::mpl::identity::type' with [
T=boost::detail::operator_arrow_result,std::basic_string,std::allocator>::const_iterator,std::string>,std::string,boost::detail::minimum_category::type>::type,const std::string &>::value_type,boost::iterator_facade,std::basic_string,std::allocator>::const_iterator,std::string>,std::string,boost::detail::minimum_category::type>::type,const std::string &>::reference,boost::iterator_facade,std::basic_string,std::allocator>::const_iterator,std::string>,std::string,boost::detail::minimum_category::type>::type,const std::string &>::pointer>::type ] Conversion loses qualifiers
That's funny, I've spent the better part of today trying to track a similar issue down. My scenario doesn't involve date_time, however. It uses tokenizer directly (which is getting used indirectly in your case by date_time). But my scenario is complicated, and my efforts to find a simplier repro have failed. Not a problem in date_time, but certainly a problem either in tokenizer or iterator (or possibly a compiler bug). I'm continuing to investigate. -- Eric Niebler Boost Consulting www.boost-consulting.com

At Thursday 2004-12-02 18:52, you wrote:
Victor A. Wagner Jr. wrote:
The program that causes this error used to compile (until a few days ago) I'm using the cvs HEAD c:\boost\include\boost-1_32\boost\iterator\iterator_facade.hpp(326) : error C2664: 'boost::implicit_cast' : cannot convert parameter 1 from 'const std::string *__w64 ' to 'boost::mpl::identity::type' with [
T=boost::detail::operator_arrow_result,std::basic_string,std::allocator>::const_iterator,std::string>,std::string,boost::detail::minimum_category::type>::type,const std::string &>::value_type,boost::iterator_facade,std::basic_string,std::allocator>::const_iterator,std::string>,std::string,boost::detail::minimum_category::type>::type,const std::string &>::reference,boost::iterator_facade,std::basic_string,std::allocator>::const_iterator,std::string>,std::string,boost::detail::minimum_category::type>::type,const std::string &>::pointer>::type ] Conversion loses qualifiers
That's funny, I've spent the better part of today trying to track a similar issue down. My scenario doesn't involve date_time, however. It uses tokenizer directly (which is getting used indirectly in your case by date_time). But my scenario is complicated, and my efforts to find a simplier repro have failed.
Not a problem in date_time, but certainly a problem either in tokenizer or iterator (or possibly a compiler bug). I'm continuing to investigate.
would my attempting to reduce it to a simpler test case be useful??
-- Eric Niebler Boost Consulting www.boost-consulting.com _______________________________________________ Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost
Victor A. Wagner Jr. http://rudbek.com The five most dangerous words in the English language: "There oughta be a law"

Victor A. Wagner Jr. wrote:
At Thursday 2004-12-02 18:52, you wrote:
Victor A. Wagner Jr. wrote:
The program that causes this error used to compile (until a few days ago) I'm using the cvs HEAD c:\boost\include\boost-1_32\boost\iterator\iterator_facade.hpp(326) : error C2664: 'boost::implicit_cast' : cannot convert parameter 1 from 'const std::string *__w64 ' to 'boost::mpl::identity::type' with [
T=boost::detail::operator_arrow_result,std::basic_string,std::allocator>::const_iterator,std::string>,std::string,boost::detail::minimum_category::type>::type,const std::string &>::value_type,boost::iterator_facade,std::basic_string,std::allocator>::const_iterator,std::string>,std::string,boost::detail::minimum_category::type>::type,const std::string &>::reference,boost::iterator_facade,std::basic_string,std::allocator>::const_iterator,std::string>,std::string,boost::detail::minimum_category::type>::type,const std::string &>::pointer>::type ] Conversion loses qualifiers
That's funny, I've spent the better part of today trying to track a similar issue down. My scenario doesn't involve date_time, however. It uses tokenizer directly (which is getting used indirectly in your case by date_time). But my scenario is complicated, and my efforts to find a simplier repro have failed.
Not a problem in date_time, but certainly a problem either in tokenizer or iterator (or possibly a compiler bug). I'm continuing to investigate.
would my attempting to reduce it to a simpler test case be useful??
This is almost certainly related to http://tinyurl.com/5pmbf . If you look through that thread you will understand the issues, and see that I had checked in a partial fix for a different problem a few days ago that caused some other problems in turn. Now there's what should be a fix in the CVS. Please let me know if that's not the case. -- Dave Abrahams Boost Consulting http://www.boost-consulting.com

David Abrahams wrote:
Victor A. Wagner Jr. wrote:
The program that causes this error used to compile (until a few days ago)
<snip!>
This is almost certainly related to http://tinyurl.com/5pmbf . If you look through that thread you will understand the issues, and see that I had checked in a partial fix for a different problem a few days ago that caused some other problems in turn. Now there's what should be a fix in the CVS. Please let me know if that's not the case.
Ah, ha! That explains the problem, and it also explains why the problem disappeared after my sync this morning. Thanks! -- Eric Niebler Boost Consulting www.boost-consulting.com

At Friday 2004-12-03 12:22, you wrote:
Victor A. Wagner Jr. wrote:
At Thursday 2004-12-02 18:52, you wrote:
Victor A. Wagner Jr. wrote:
The program that causes this error used to compile (until a few days ago) I'm using the cvs HEAD c:\boost\include\boost-1_32\boost\iterator\iterator_facade.hpp(326) : error C2664: 'boost::implicit_cast' : cannot convert parameter
[deleted]
This is almost certainly related to http://tinyurl.com/5pmbf . If you look through that thread you will understand the issues, and see that I had checked in a partial fix for a different problem a few days ago that caused some other problems in turn. Now there's what should be a fix in the CVS. Please let me know if that's not the case.
I noted earlier that I was now getting some new warnings I hadn't seen before but the errors are all gone.
-- Dave Abrahams Boost Consulting http://www.boost-consulting.com
_______________________________________________ Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost
Victor A. Wagner Jr. http://rudbek.com The five most dangerous words in the English language: "There oughta be a law"

Victor A. Wagner Jr. wrote:
This is almost certainly related to http://tinyurl.com/5pmbf . If you look through that thread you will understand the issues, and see that I had checked in a partial fix for a different problem a few days ago that caused some other problems in turn. Now there's what should be a fix in the CVS. Please let me know if that's not the case.
I noted earlier that I was now getting some new warnings I hadn't seen before but the errors are all gone.
Are the warnings a concern? What are they? -- Dave Abrahams Boost Consulting http://www.boost-consulting.com

At Saturday 2004-12-04 07:15, you wrote:
Victor A. Wagner Jr. wrote:
This is almost certainly related to http://tinyurl.com/5pmbf . If you look through that thread you will understand the issues, and see that I had checked in a partial fix for a different problem a few days ago that caused some other problems in turn. Now there's what should be a fix in the CVS. Please let me know if that's not the case.
I noted earlier that I was now getting some new warnings I hadn't seen before but the errors are all gone.
Are the warnings a concern? What are they?
copied and pasted from earlier (I don't have any archive links). They're not related to the iterator, they have to do with some types in date-time about which I should need to know nothing.
Could this be part of the problem?
maybe, I get no errors compiling my program now, but I have some new warnings: the two size_t to int ones are pesky, the others, I can't tell if there actually IS any possibility of losing data. ------ Build started: Project: MakeDriveData, Configuration: Debug Win32 ------ Compiling... cyborgdrivecanula.cpp c:\boost\include\boost-1_32\boost\date_time\posix_time\conversion.hpp(27) : warning C4244: 'argument' : conversion from 'time_t' to 'long', possible loss of data c:\boost\include\boost-1_32\boost\date_time\time_system_counted.hpp(57) : warning C4244: 'initializing' : conversion from 'boost::date_time::counted_time_rep<config>::int_type' to 'boost::date_time::gregorian_calendar_base<ymd_type_,date_int_type_>::date_int_type', possible loss of data with [ config=boost::posix_time::millisec_posix_time_system_config ] and [ ymd_type_=boost::gregorian::greg_year_month_day, date_int_type_=boost::date_time::int_adapter<unsigned long>::int_type ] c:\boost\include\boost-1_32\boost\date_time\time_system_counted.hpp(52) : while compiling class-template member function 'boost::date_time::counted_time_rep<config>::date_type boost::date_time::counted_time_rep<config>::date(void) const' with [ config=boost::posix_time::millisec_posix_time_system_config ] c:\boost\include\boost-1_32\boost\date_time\time_system_counted.hpp(111) : see reference to class template instantiation 'boost::date_time::counted_time_rep<config>' being compiled with [ config=boost::posix_time::millisec_posix_time_system_config ] c:\boost\include\boost-1_32\boost\date_time\time.hpp(52) : see reference to class template instantiation 'boost::date_time::counted_time_system<time_rep>' being compiled with [ time_rep=boost::posix_time::int64_time_rep ] c:\boost\include\boost-1_32\boost\date_time\posix_time\ptime.hpp(32) : see reference to class template instantiation 'boost::date_time::base_time<T,time_system>' being compiled with [ T=boost::posix_time::ptime, time_system=boost::posix_time::posix_time_system ] c:\boost\include\boost-1_32\boost\date_time\time_parsing.hpp(81) : warning C4267: 'initializing' : conversion from 'size_t' to 'int', possible loss of data c:\boost\include\boost-1_32\boost\date_time\posix_time\time_parsers.hpp(27) : see reference to function template instantiation 'time_duration boost::date_time::parse_delimited_time_duration<boost::posix_time::time_duration>(const std::string &)' being compiled with [ time_duration=boost::posix_time::time_duration ] c:\boost\include\boost-1_32\boost\date_time\date_parsing.hpp(211) : warning C4244: 'argument' : conversion from 'std::allocator<_Ty>::value_type' to 'char', possible loss of data with [ _Ty=wchar_t ] c:\boost\include\boost-1_32\boost\date_time\date_parsing.hpp(253) : see reference to function template instantiation 'date_type boost::date_time::from_stream_type<date_type,std::basic_string<_Elem,_Traits,_Ax>::iterator>(iterator_type &,iterator_type &,wchar_t)' being compiled with [ date_type=boost::gregorian::date, _Elem=wchar_t, _Traits=std::char_traits<wchar_t>, _Ax=std::allocator<wchar_t>, iterator_type=std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t>>::iterator ] c:\boost\include\boost-1_32\boost\date_time\gregorian\parsers.hpp(78) : see reference to function template instantiation 'boost::date_time::period<point_rep,duration_rep> boost::date_time::from_simple_string_type<boost::gregorian::date,wchar_t>(const std::basic_string<_Elem,_Traits,_Ax> &)' being compiled with [ point_rep=boost::gregorian::date, duration_rep=boost::gregorian::date_duration, _Elem=wchar_t, _Traits=std::char_traits<wchar_t>, _Ax=std::allocator<wchar_t> ] Linking... Build log was saved at "file://c:\Projects\CyborgPusher\MakeDriveData\Debug\BuildLog.htm" MakeDriveData - 0 error(s), 4 warning(s)
Bart
_______________________________________________ Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost
Victor A. Wagner Jr. http://rudbek.com The five most dangerous words in the English language: "There oughta be a law" _______________________________________________ Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost
-- Dave Abrahams Boost Consulting http://www.boost-consulting.com
_______________________________________________ Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost
Victor A. Wagner Jr. http://rudbek.com The five most dangerous words in the English language: "There oughta be a law"

On Sat, 04 Dec 2004 08:45:31 -0700, Victor A. Wagner Jr. wrote
Could this be part of the problem?
maybe, I get no errors compiling my program now, but I have some new warnings: the two size_t to int ones are pesky, the others, I can't tell if there actually IS any possibility of losing data.
I've just checked in some changes that will hopefully take care of the warnings -- let me know if they clear up. I guess my only question is there a way we can catch these warnings before the release next time? I can't imagine that the upstream iterator changes brought these on, so I'm thinking they were there before the release.... Jeff ps: I'll pre-apologize if you brought it up before the release and I let them slip thru -- it's entirely possible given my usual multi-tasked state...

Jeff Garland writes:
I've just checked in some changes that will hopefully take care of the warnings -- let me know if they clear up.
I guess my only question is there a way we can catch these warnings before the release next time?
We will. Getting warnings into regression reports is on top of our todo list. -- Aleksey Gurtovoy MetaCommunications Engineering

On Thu, 02 Dec 2004 17:52:20 -0800, Eric Niebler wrote:
Victor A. Wagner Jr. wrote:
The program that causes this error used to compile (until a few days ago) I'm using the cvs HEAD
c:\boost\include\boost-1_32\boost\iterator\iterator_facade.hpp(326) : error C2664: 'boost::implicit_cast' : cannot convert parameter 1 from 'const std::string *__w64 ' to 'boost::mpl::identity::type' with [
T=boost::detail::operator_arrow_result,std::basic_string,std::allocator>::const_iterator,std::string>,std::string,boost::detail::minimum_category::type>::type,const std::string &>::value_type,boost::iterator_facade,std::basic_string,std::allocator>::const_iterator,std::string>,std::string,boost::detail::minimum_category::type>::type,const std::string &>::reference,boost::iterator_facade,std::basic_string,std::allocator>::const_iterator,std::string>,std::string,boost::detail::minimum_category::type>::type,const std::string &>::pointer>::type ] Conversion loses qualifiers
That's funny, I've spent the better part of today trying to track a similar issue down. My scenario doesn't involve date_time, however. It uses tokenizer directly (which is getting used indirectly in your case by date_time). But my scenario is complicated, and my efforts to find a simplier repro have failed.
Not a problem in date_time, but certainly a problem either in tokenizer or iterator (or possibly a compiler bug). I'm continuing to investigate.
I saw this error yesterday while fixing another date_time issue. The date_time code that triggered it uses the deprecated tokenizer char_delimiters_separator. (I was planning on fixing that today.) Could this be part of the problem? Bart

At Friday 2004-12-03 07:00, you wrote:
On Thu, 02 Dec 2004 17:52:20 -0800, Eric Niebler wrote:
That's funny, I've spent the better part of today trying to track a similar issue down. My scenario doesn't involve date_time, however. It uses tokenizer directly (which is getting used indirectly in your case by date_time). But my scenario is complicated, and my efforts to find a simplier repro have failed.
Not a problem in date_time, but certainly a problem either in tokenizer or iterator (or possibly a compiler bug). I'm continuing to investigate.
I saw this error yesterday while fixing another date_time issue. The date_time code that triggered it uses the deprecated tokenizer char_delimiters_separator. (I was planning on fixing that today.)
Could this be part of the problem?
maybe, I get no errors compiling my program now, but I have some new warnings: the two size_t to int ones are pesky, the others, I can't tell if there actually IS any possibility of losing data. ------ Build started: Project: MakeDriveData, Configuration: Debug Win32 ------ Compiling... cyborgdrivecanula.cpp c:\boost\include\boost-1_32\boost\date_time\posix_time\conversion.hpp(27) : warning C4244: 'argument' : conversion from 'time_t' to 'long', possible loss of data c:\boost\include\boost-1_32\boost\date_time\time_system_counted.hpp(57) : warning C4244: 'initializing' : conversion from 'boost::date_time::counted_time_rep<config>::int_type' to 'boost::date_time::gregorian_calendar_base<ymd_type_,date_int_type_>::date_int_type', possible loss of data with [ config=boost::posix_time::millisec_posix_time_system_config ] and [ ymd_type_=boost::gregorian::greg_year_month_day, date_int_type_=boost::date_time::int_adapter<unsigned long>::int_type ] c:\boost\include\boost-1_32\boost\date_time\time_system_counted.hpp(52) : while compiling class-template member function 'boost::date_time::counted_time_rep<config>::date_type boost::date_time::counted_time_rep<config>::date(void) const' with [ config=boost::posix_time::millisec_posix_time_system_config ] c:\boost\include\boost-1_32\boost\date_time\time_system_counted.hpp(111) : see reference to class template instantiation 'boost::date_time::counted_time_rep<config>' being compiled with [ config=boost::posix_time::millisec_posix_time_system_config ] c:\boost\include\boost-1_32\boost\date_time\time.hpp(52) : see reference to class template instantiation 'boost::date_time::counted_time_system<time_rep>' being compiled with [ time_rep=boost::posix_time::int64_time_rep ] c:\boost\include\boost-1_32\boost\date_time\posix_time\ptime.hpp(32) : see reference to class template instantiation 'boost::date_time::base_time<T,time_system>' being compiled with [ T=boost::posix_time::ptime, time_system=boost::posix_time::posix_time_system ] c:\boost\include\boost-1_32\boost\date_time\time_parsing.hpp(81) : warning C4267: 'initializing' : conversion from 'size_t' to 'int', possible loss of data c:\boost\include\boost-1_32\boost\date_time\posix_time\time_parsers.hpp(27) : see reference to function template instantiation 'time_duration boost::date_time::parse_delimited_time_duration<boost::posix_time::time_duration>(const std::string &)' being compiled with [ time_duration=boost::posix_time::time_duration ] c:\boost\include\boost-1_32\boost\date_time\date_parsing.hpp(211) : warning C4244: 'argument' : conversion from 'std::allocator<_Ty>::value_type' to 'char', possible loss of data with [ _Ty=wchar_t ] c:\boost\include\boost-1_32\boost\date_time\date_parsing.hpp(253) : see reference to function template instantiation 'date_type boost::date_time::from_stream_type<date_type,std::basic_string<_Elem,_Traits,_Ax>::iterator>(iterator_type &,iterator_type &,wchar_t)' being compiled with [ date_type=boost::gregorian::date, _Elem=wchar_t, _Traits=std::char_traits<wchar_t>, _Ax=std::allocator<wchar_t>, iterator_type=std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t>>::iterator ] c:\boost\include\boost-1_32\boost\date_time\gregorian\parsers.hpp(78) : see reference to function template instantiation 'boost::date_time::period<point_rep,duration_rep> boost::date_time::from_simple_string_type<boost::gregorian::date,wchar_t>(const std::basic_string<_Elem,_Traits,_Ax> &)' being compiled with [ point_rep=boost::gregorian::date, duration_rep=boost::gregorian::date_duration, _Elem=wchar_t, _Traits=std::char_traits<wchar_t>, _Ax=std::allocator<wchar_t> ] Linking... Build log was saved at "file://c:\Projects\CyborgPusher\MakeDriveData\Debug\BuildLog.htm" MakeDriveData - 0 error(s), 4 warning(s)
Bart
_______________________________________________ Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost
Victor A. Wagner Jr. http://rudbek.com The five most dangerous words in the English language: "There oughta be a law"
participants (6)
-
Aleksey Gurtovoy
-
Bart
-
David Abrahams
-
Eric Niebler
-
Jeff Garland
-
Victor A. Wagner Jr.