[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: C++ ostreams on EGCS and Linux



I don't know about C++ ostreams.
But using egcs with Dr Geo who is C++ written I remark some problems,
the code don't do what expected when compiled with -O3. Without this
options it's ok.

Hope it can help


Micah Yoder wrote:
> 
> Who here has used egcs extensively?  I'm getting some EXTREME weirdness
> here.
> 
> First, why is the C++ standard 'ostringstream' simply 'ostrstream' in
> the EGCS library?  This seems like a pretty big compatibility breaker.
> I'm using Stroustrup's _C++ Programming Language_ 3rd edition as my C++
> reference.
> 
> If that wasn't bad enough, ostrstream is screwed up.  When I output
> several lines to an ostrstream variable, garbage characters are getting
> in there in totally inexplicable places, and parts of it are repeating.
> I have a function that's supposed to output a few lines of text in a
> string.  When I just use cout << it displays normally.  But when I use
> something like:
> 
>   ostrstream ret;
>   ret << "Test " << 5 << endl;
>   cout << ret.str();
>   return ret.str();
> 
> it both prints the text screwed up and returns the screwed up text.
> (NOTE: it probably won't screw up with this simple example.  If you want
> to try it I'll send you my latest airline simulator code and point you
> to the real function.)
> 
> I changed the function to simply use a string and string concatination
> operations and that fixed the problem for the display, but...
> 
> In another part of the program I want to take the returned text and
> write it to a file.  I open an ofstream and << the return of this
> function to it.  Guess what - there's garbage characters in the file!
> 
> I'm sure you'd need to see the code and the program output to get a good
> idea of what's happening.  But has anyone successfully used this stuff
> with complicated data?
> 
> Thanks,
> Micah

-- 
Hilaire Fernandes
Dr Geo project http://members.xoom.com/FeYiLai/dr_geo/doctor_geo.html