Boost logo

Boost :

From: Howard Hinnant (hinnant_at_[hidden])
Date: 2005-05-10 08:13:42


On May 10, 2005, at 5:41 AM, Gennaro Prota wrote:

> --- Doug Gregor <dgregor_at_[hidden]> wrote:
>> The stream extraction operators for dynamic_bitset are failing on
>> CodeWarrior 9.4. See: http://tinyurl.com/addko
>> Is anyone familiar enough with the quirks of Metrowerks' iostreams to
>> fix this issue?
>
> Hi Doug, Jeremy and Howard
>
> unfortunately, due to a series of vicissitudes that would be too long
> to tell,
> I have no home connection at the moment (a situation that lasts from
> several
> months) and thus I can't work on CVS. Howard Hinnant is probably the
> person who
> knows Metrowerks compiler and library best. Howard?

I know the Metrowerks library inside/out. I started looking at this
last night but I'm pretty lost in the test code.

Here's what I have so far:

Failure inside of:

   template<typename Stream, typename String>
   static void stream_extractor(Bitset& b,
                                Stream& is,
                                String& str
                               )

at:

     if(stream_was_good)
       BOOST_CHECK(remainder == str.substr(after_digits));

At this point remainder is a zero-length string, after_digits is 0 and
str is length 359.

On entry to this routine b has length 1 and that element is true. I
believe, but I am not positive that str is unmodified through this
test, despite being passed by reference (as opposed to const ref).

I've so far been unable to determine the state of the stream is on
entry. But it looks completely hosed by the time the BOOST_CHECK is
triggered. For example the iostate has the value 0x7E even though the
highest numerical state it can possibly have is 0x07.
did_throw is false.

-Howard


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk