C++ Logo

SG12

Advanced search

Subject: Re: [ub] Justification for < not being a total order on pointers?
From: Gabriel Dos Reis (gdr_at_[hidden])
Date: 2013-10-10 17:04:21


I think we must be extremely careful in generalizations.
For example, GCC/libstdc++ isn't necessarily built for all supported platforms.
Even the ones that have g++ built don't even have the minimal runtime built.

From: ub-bounces_at_[hidden] [mailto:ub-bounces_at_[hidden]] On Behalf Of Christopher Jefferson
Sent: Thursday, October 10, 2013 4:59 PM
To: Lawrence Crowl
Cc: ub_at_[hidden]
Subject: Re: [ub] Justification for < not being a total order on pointers?

On 10 Oct 2013 21:33, "Lawrence Crowl" <Lawrence_at_[hidden]<mailto:Lawrence_at_[hidden]>> wrote:
>
> On 10/10/13, Nevin Liber <nevin_at_[hidden]<mailto:nevin_at_[hidden]>> wrote:
> > On 10 October 2013 02:36, Lawrence Crowl <Lawrence_at_[hidden]<mailto:Lawrence_at_[hidden]>> wrote:
> >> The problem is that if you need to represent an object with more than
> >> one segment (as was necessary for arrays > 64 kB on x86) then
> >> requiring a total order within an array places a consistency requirement
> >> on computing a total order between arrays.
> >
> > Didn't that issue already exist in C++98 (at least with respect to
> > std::less)?
>
> I think so, but that probably implies that the library hasn't been implemented
> on the full range of machines allowed by the base language.
>
> At this point, I think we need to ask if we really do want to support machines
> with small segments. Does anyone know of any current such machines?

Both GCC and clang both implement std::less on pointers with <, so there are it seems no such machines with a correct open source C++ implementation at least.

Chris
>
> --
> Lawrence Crowl
> _______________________________________________
> ub mailing list
> ub_at_[hidden]<mailto:ub_at_[hidden]>
> http://www.open-std.org/mailman/listinfo/ub



SG12 list run by herb.sutter at gmail.com