To: djgpp AT sun DOT soe DOT clarkson DOT edu Subject: iostreams (iomanip.h) From: david nugent Reply-To: david AT csource DOT oz DOT au Date: Thu, 05 Nov 92 11:27:56 +1000 Organization: Unique Computing Pty Ltd, Melbourne, Australia -- x.cc -- # include # include void main (void) { cout << "Hex number: " << hex << 102 << endl; } -- end -- This outputs: Hex number: 0x66 The "0x" is inserted gratuitously, and in error - it shouldn't be. The reasons are obvious once you start playing with widths, justification and fill in ios. I'm not sure if this is a gnu lib problem or is specific to the djgpp library but I'll report it here in case it is only dj's. I've used two other c++ compilers which don't exhibit this behaviour (sorry, I don't yet have the AT&T iostreams reference to state definitely what is or is not the "correct" behaviour). This is with v1.09, but it was the same with 1.08. I also notice that iomanip.h defines "IOMANIPdeclare(T)" as an empty macro. Is this because gcc doesn't yet support templates well enough for it to work? (I recently noticed that libg++ supplied a basically blank file, I guess for the same reason) I'm currently using a macro version, slightly hacked from MicroSoft C/C++'s include directory which seems to work fine. david Smoke me a kipper, Skipper - I'll be back for breakfast! - "Ace" Rimmer david AT csource DOT oz DOT au 3:632/348 AT fidonet 58:4100/1 AT intlnet 199:4242/5 AT rainbownet Unique Computing P/L / Communications+LAN Specialists / Public Access USENET PO Box 352, Doveton, VIC, Aust 3144. Data/BBS: +61-3-792-3507 / +61-3-794-7949