|
Boost : |
Subject: Re: [boost] Is there interest in portable integer overflow detection, with policy based handling?
From: Ben Robinson (cppmaven_at_[hidden])
Date: 2012-02-21 20:35:28
On Tue, Feb 21, 2012 at 5:01 AM, Beman Dawes <bdawes_at_[hidden]> wrote:
> On Tue, Feb 21, 2012 at 1:04 AM, Ben Robinson <cppmaven_at_[hidden]> wrote:
> > The implementation is complete, with 5 policies created (and users can
> > always create and use more). The policies are:
> >
> > ignore_overflow
> > throw_overflow
> > assert_overflow
> > saturate_overflow
> > nan_overflow
> >
> > The implementation is fully portable, and it provides integer types which
> > can be used like the builtin integers, except they will trigger their
> > policy on an overflow.
> >
> > Also, this library will integrate seamlessly with the Boost Constrained
> > Value Library (contributed by Robert Kawulak).
> >
> > Does this pique anyone's interest?
>
> How does it relate to Boost.NumericConversion?
>
> See
> http://www.boost.org/doc/libs/1_48_0/libs/numeric/conversion/doc/html/index.html
>
> --Beman
>
> Boost.NumericConversion has some limitations with respect to overflow
handling. The arguments to the handling policy only contain the type of
overflow, and not the values, nor the mathematical operation which was
attempted. Therefore, as I understand it, it is not possible to write a
saturate_overflow, or periodic_overflow policy, for example. You can only
throw, assert, or ignore. Again this is my understanding.
Boost.NumericConversion has some nice floating point to integer conversion
capability. My library aims only at detecting integer overflow (positive
and negative).
Ben Robinson
> _______________________________________________
> Unsubscribe & other changes:
> http://lists.boost.org/mailman/listinfo.cgi/boost
>
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk