v2 and v3 of libstdc++
Ajay Bansal
Ajay_Bansal@infosys.com
Mon Jan 27 17:48:00 GMT 2003
Hmm... Seems that there must be some issues for which all these changes
have been carried out. But (IMHO)... Wouldn't it have served the purpose
to also keep the old API's. these old members were ONCE part of
standards (I think so).. & if I am not wrong.. Lots of big codes must be
using these. (mine is a very medium sized code.. Only 120 modules &
approx .6 million lines of code)...
But even with this code.. Changes are huge.. I was wondering what
happens to big projects..
Idea of above story is that if somebody has faced the issues I am facing
now, whats the easiest way out.
-Ajay
-----Original Message-----
From: Phil Edwards [mailto:phil@jaj.com]
Sent: Monday, January 27, 2003 8:08 PM
To: Ajay Bansal
Cc: libstdc++@gcc.gnu.org
Subject: Re: v2 and v3 of libstdc++
On Mon, Jan 27, 2003 at 07:56:11PM +0530, Ajay Bansal wrote:
>
> I am upgrading from 2.96 version of gcc to 3.2.1 version of gcc. it
> seems that libstdc++ also has gone major changes in the course.
Yes, like a total rewrite.
> Issue 1. nocreate and noreplace members have been removed from ios
> class
They are not part of the ISO standard. As more compiler become more
standard- compliant, you will encounter more problems. Best to fix your
code.
I suggest a good C++ textbook.
> Issue 2. open(const char*&, int&, int) is not a member of fstream
> class. And Second member of the open method of fstream class has to be
> of type ios_base::openmode
Likewise.
> #ifdef __linux
> iostrm.open(fileName, (ios_base::openmode)op );
> #else
> iostrm.open(fileName, op, 0644);
> #endif
Better to just define 'op' to be of type openmode to start with.
> Issue 3. filebuf class does not have "fd" as its member function
[..]
> Can somebody please comment on our solutions and suggest us with the
> solution for the 4th.
See the libstdc++ FAQ.
--
I would therefore like to posit that computing's central challenge, viz.
"How not to make a mess of it," has /not/ been met.
- Edsger Dijkstra,
1930-2002
More information about the Libstdc++
mailing list