Path: utzoo!utgpu!jarvis.csri.toronto.edu!mailrus!tut.cis.ohio-state.edu!ATHENA.MIT.EDU!eichin From: eichin@ATHENA.MIT.EDU (Mark W. Eichin) Newsgroups: gnu.g++.lib.bug Subject: libg++1.34 stream class doesn't conform to The Book Message-ID: <8903152358.AA19102@CHARON.MIT.EDU> Date: 15 Mar 89 23:58:55 GMT Sender: daemon@tut.cis.ohio-state.edu Distribution: gnu Organization: GNUs Not Usenet Lines: 17 I've discovered two significant incompatibilities between the libg++ stream class and the description in Stroustrup's book. 1) istream.get(char*,int,char) is of type File, rather than type istream. This has the unpleasant effect of making a following >> not function, but not be flagged as an error. 2) operator>>(char&) doesn't ignore whitespace, yet this behavior is explicit in the description in the book (in fact, there is even a code sample, of how to define this operator...) If I wanted to read whitespace, I would use istream.get(char&). I'd also like to note that the Regex class is missing any way of using the registers (\(\) pairs) even though the code is there. In fact, both libg++ and OOPS use slightly different version of the GNUemacs regexp code anyway... having the superset here would be nice. Mark Eichin