On Sat, Feb 04, 2012 at 11:41:38AM -0800, Eli Friedman wrote:
> On Sat, Feb 4, 2012 at 11:27 AM, Joerg Sonnenberger
> <[email protected]> wrote:
> > On Sat, Feb 04, 2012 at 11:53:28AM -0500, Howard Hinnant wrote:
> >> But I note the crux of this issue appears to be that this:
> >>
> >>    static const intmax_t nan = (1LL << (sizeof(intmax_t) * CHAR_BIT - 1));
> >>
> >> is no longer consider a compile time constant expression.
> >
> > Ignoring the question of whether clang should allow that or not, why
> > aren't you using the more compact statement below, which is just as
> > portable:
> >
> > static const intmax_t -~(intmax_t)0;
> 
> -~0 is 1, not INT_MIN.

Bah right. But what about using INT_MIN etc? It's not like it doesn't
already depend on CHAR_BIT to be present.

Joerg
_______________________________________________
cfe-commits mailing list
[email protected]
http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits

Reply via email to