www.digitalmars.com         C & C++   DMDScript  

c++.stlsoft - Bug or change in the 1.8.1 release of string_tokeniser

reply "Pablo Aguilar" <paguilarg hotmail.com> writes:
I have the following code:

  tokenizer toks(m_line.substr(0, pos), '*');
  tokenizer::const_iterator it(toks.begin());
  assert(it != toks.end());

Where m_line is an std::string member variable, tokenizer is:

typedef stlsoft_ns_qual(string_tokeniser)<
   std::string
 , char
 , stlsoft_ns_qual(string_tokeniser_ignore_blanks)<false>
 tokenizer;

The code used to compile with 1.7.1... and I hadn't recompiled it with 1.8.1 'till today, and found out that I now get an ambiguous constructor call on the first line. I went to the stlsoft_string_tokeniser.h file, and commented out the constructor at line 400, and my code compiles again. BTW, the comments for that constructor seem to be leftover comments from what's probably a file search. Attached is a trimmed down test file compile with: cl -GX test.cpp I'm using MS VC++ 6.0 SP 6 / WinXP SP 2
Sep 29 2004
parent reply "Matthew" <admin.hat stlsoft.dot.org> writes:
Hmmm. That's not good!

I'll investigate.

Sorry for the hassles.


"Pablo Aguilar" <paguilarg hotmail.com> wrote in message
news:cjf42t$1egi$1 digitaldaemon.com...
I have the following code:

  tokenizer toks(m_line.substr(0, pos), '*');
  tokenizer::const_iterator it(toks.begin());
  assert(it != toks.end());

 Where m_line is an std::string member variable, tokenizer is:

 typedef stlsoft_ns_qual(string_tokeniser)<
   std::string
 , char
 , stlsoft_ns_qual(string_tokeniser_ignore_blanks)<false>
 tokenizer;

The code used to compile with 1.7.1... and I hadn't recompiled it with 1.8.1 'till today, and found out that I now get an ambiguous constructor call on the first line. I went to the stlsoft_string_tokeniser.h file, and commented out the constructor at line 400, and my code compiles again. BTW, the comments for that constructor seem to be leftover comments from what's probably a file search. Attached is a trimmed down test file compile with: cl -GX test.cpp I'm using MS VC++ 6.0 SP 6 / WinXP SP 2

Sep 29 2004
parent reply "Matthew" <admin.hat stlsoft.dot.org> writes:
This is an issue that I've been needing to get sorted in a long while, with a
proper 
STLSOFT_CF_MEMBER_TEMPLATE_OVERLOAD_DISCRIMINATED symbol, or some such, so I
guess now's the time.

I need to release a 1.8.2 shortly, as there've been some other fixes, which
other libs about to be released depend on, 
so hopefully I can roll this all in together.

Thanks again for your excellent spotting and diagnosis skills. ;-)

Matthew



"Matthew" <admin.hat stlsoft.dot.org> wrote in message
news:cjf9jo$1ieo$1 digitaldaemon.com...
 Hmmm. That's not good!

 I'll investigate.

 Sorry for the hassles.


 "Pablo Aguilar" <paguilarg hotmail.com> wrote in message
news:cjf42t$1egi$1 digitaldaemon.com...
I have the following code:

  tokenizer toks(m_line.substr(0, pos), '*');
  tokenizer::const_iterator it(toks.begin());
  assert(it != toks.end());

 Where m_line is an std::string member variable, tokenizer is:

 typedef stlsoft_ns_qual(string_tokeniser)<
   std::string
 , char
 , stlsoft_ns_qual(string_tokeniser_ignore_blanks)<false>
 tokenizer;

The code used to compile with 1.7.1... and I hadn't recompiled it with 1.8.1 'till today, and found out that I now get an ambiguous constructor call on the first line. I went to the stlsoft_string_tokeniser.h file, and commented out the constructor at line 400, and my code compiles again. BTW, the comments for that constructor seem to be leftover comments from what's probably a file search. Attached is a trimmed down test file compile with: cl -GX test.cpp I'm using MS VC++ 6.0 SP 6 / WinXP SP 2


Sep 29 2004
parent reply "Pablo Aguilar" <paguilarg hotmail.com> writes:
 This is an issue that I've been needing to get sorted in a long while, 
 with a proper STLSOFT_CF_MEMBER_TEMPLATE_OVERLOAD_DISCRIMINATED symbol, or 
 some such, so I guess now's the time.

 I need to release a 1.8.2 shortly, as there've been some other fixes, 
 which other libs about to be released depend on, so hopefully I can roll 
 this all in together.

 Thanks again for your excellent spotting and diagnosis skills. ;-)

 Matthew

Skills... hmm... I just press F7 and the bugs come out on their own! ;-)
Sep 29 2004
parent "Matthew" <admin.hat stlsoft.dot.org> writes:
"Pablo Aguilar" <paguilarg hotmail.com> wrote in message
news:cjfm6k$1nsq$1 digitaldaemon.com...
 This is an issue that I've been needing to get sorted in a long while, with a
proper 
 STLSOFT_CF_MEMBER_TEMPLATE_OVERLOAD_DISCRIMINATED symbol, or some such, so I
guess now's the time.

 I need to release a 1.8.2 shortly, as there've been some other fixes, which
other libs about to be released depend 
 on, so hopefully I can roll this all in together.

 Thanks again for your excellent spotting and diagnosis skills. ;-)

 Matthew

Skills... hmm... I just press F7 and the bugs come out on their own! ;-)

LOL! Ok, I've done the update. I'll attempt to post a patch next week. Thanks again for the feedback. Cheers Matthew
Sep 29 2004