You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Unfortunately we cannot rely on the fact that number-like type `T`
support arithmetic operations with `int` or `double`. E.g.
`T = boost::numeric::interval<S>` only supports arithmetic operations
between `T` and `S`. Hence we cannot use `t-1`. While `t-1.` works
for `S=double` it still fails for `S=float`.
As a remedy we use check if constants of the raw type are compatible
and convert the constant to `T` otherwise. Doing the conversion always
might be costly for other types `T` that support cheap operations
with elementary type (e.g. `T=ADValue<S>` itself).
0 commit comments