GCC 3.3.1, new warnings with <limits>

Terry Lambert tlambert2 at mindspring.com
Tue Jul 15 04:02:40 PDT 2003


David Leimbach wrote:
> >Gcc needs a #pragma to disable specific warnings as a one-shot.
> >
> >This was discussed in detail on the GCC mailing list.
> 
> True... but I don't think I was talking about a one-shot disabling
> of the message.
> 
> I was thinking more about how a compliant C++ compiler can determine
> the signedness of a datatype without type introspection or type
> metadata available at compile time.  [which seems to be what
> numeric_limits<T> is all about doesn't it?]

I don't think there's a good answer available that's also
portable.  What you need is an implementation that doesn't
care about the signedness of the type.

You could do some really ugly tricks that would work.  For
example, calling a helper function with the same argument
twice, and setting one of the arguments to zero, and using
*that* to do the compare (the types would always match).
using two compares swapping the values would tell you what
you needed.  You'd probably want to mark the helper private,
or at least protected, and call it something like "_docompare"
to put it in the implementation space.

As I said... really ugly tricks.  8-).

-- Terry


More information about the freebsd-current mailing list