This is the mail archive of the libstdc++@gcc.gnu.org mailing list for the libstdc++ project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH] fix libstdc++/5611


Hi Douglas,

Benjamin Kosnik wrote:

> [...] Loren and others have been thinking about this for awhile: I'm
> expecting more comments.

I'd been beating on the floating-point side of things.  However, I did
support this line of attack a while back so I'd better review it. ;-)

It looks like you did the best possible given the current architecture
of things (which is all that can be asked of you ;-).  It is sad to
see that these files have to be touched at all:

include/bits/locale_facets.tcc (as Benjamin observed, now in
config/locale/c_locale_generic.cc); acinclude.m4; acconfig.h

but I guess this just shows how libiberty was designed before C++ came
about (and mandatory C prototypes, if the old free-wheeling practice
is *ever* fully deprecated) and attempts to be decoupled from having
to replace/update local system headers.

If we ever use this same technique to remove the code path selection
on _GLIBCPP_USE_C99, then we should investigate hoisting the prototype
declarations to headers (in this case, e.g. cstdlib).

> [...] I think this kind of change is not advisable for the gcc-3.0
> branch. I'd like to see it in mainline though, when the above is
> worked out.

Agreed, it is not a regression from gcc 3.0.X or any shipped version
of libstdc++-v3.

This patch will need to be approved by libiberty maintainers (they
read gcc-patches not libstdc++; and non-trivial C++ library patches
are suppose to go to both places anyways).  The work over there looks
done to me but they may spot something they don't like (e.g. they may
want you to add the documentation string ala libiberty/strtol.c).

Please post a version tested against the gcc mainline if you can.  I
am sorry we didn't discuss this before you started.

Regards,
Loren


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]