PATCH - Re: Troubles with current 3.3 and 21_strings/ctor_copy_dtor.cc

Phil Edwards phil@jaj.com
Thu Jul 17 17:20:00 GMT 2003


On Thu, Jul 17, 2003 at 11:46:22AM +0200, Paolo Carlini wrote:
> Greg Schafer wrote:
> 
> >Ok, I found it :-)
> >
> >The problems started when this patch was applied:-
> >
> >http://gcc.gnu.org/ml/gcc-patches/2003-06/msg02197.html
> >
> >Looks like part of the configure.in was somehow missed. Tha attached patch
> >makes it work.
> > 
> Did you take inspiration from the corresponding mainline configure.in? 
> In fact, there 'true' and 'false' (vs '1' and '0') are used in those 
> places. However, my knowledge of the configury details is limited and 
> cannot tell for sure why this can make such a big difference.

The mainline change was originally made for reasons of clarity:  it's a
boolean test, the result should eitehr be true or false, and writing it
that way makes it easier to read.  It also makes it easier to test, since
"true" and "false" are *nix commands which can be done directly.

We're not doing the latter on the 3.3 branch.  (On the trunk, it's tied in
with other changes.)  And that's the reason it makes a difference on 3.3:
it's doing a textual comparison instead of a "meaning" comparison:

   AC_DEFUN(GLIBCPP_CONFIGURE_TESTSUITE, [
     if test  x"$GLIBCPP_IS_CROSS_COMPILING" = xfalse; then
       # Do checks for memory limit functions.
       GLIBCPP_CHECK_SETRLIMIT
   ....

So yes, this patch needs to go in.  I'm wrestling with Solaris at the
moment, could you do the regeneration and commit?


Phil

-- 
If ye love wealth greater than liberty, the tranquility of servitude greater
than the animating contest for freedom, go home and leave us in peace.  We seek
not your counsel, nor your arms.  Crouch down and lick the hand that feeds you;
and may posterity forget that ye were our countrymen.            - Samuel Adams



More information about the Libstdc++ mailing list