On Tue, Jun 14, 2011 at 14:45, Jeffrey Yasskin <jyass...@google.com> wrote:
> In C++0x mode, without this patch, calls to a user-defined trunc() function 
> with an argument in namespace std and
> a parameter type that has an implicit conversion from the argument's type, 
> cause infinite recursion in std::trunc().
>
> This patch also includes 
> http://gcc.gnu.org/viewcvs/trunk/libstdc%2B%2B-v3/testsuite/26_numerics/headers/cmath/overloads_c%2B%2B0x_neg.cc?view=markup&pathrev=173574
>  and 
> http://gcc.gnu.org/viewcvs/trunk/libstdc%2B%2B-v3/testsuite/tr1/8_c_compatibility/cmath/overloads_neg.cc?view=markup&pathrev=173574,
>  but `svn diff` didn't capture them.

Yeah, svn diff never picks up added files.  Silly thing.

>
> Tested with `make check-c++` on x86_64-unknown-linux-gnu.
>
> 2011-06-14  Jeffrey Yasskin  <jyass...@google.com>
>
>        Merge r173574 to google/gcc-4_6.
>        * include/c_global/cmath (acosh, asinh, atanh, cbrt, copysign,
>        erf, erfc, exp2, expm1, fdim, fma, fmax, hypot, ilogb, lgamma,
>        llrint, llround, log1p, log2, logb, lrint, lround, nearbyint,
>        nextafter, nexttoward, remainder, remquo, rint, round, scalbln,
>        scalbn, tgamma, trunc): Use __enable_if on the return type.
>        * include/tr1/cmath: Likewise.
>        * testsuite/26_numerics/headers/cmath/overloads_c++0x_neg.cc: New.
>        * testsuite/tr1/8_c_compatibility/cmath/overloads_neg.cc: Likewise.
>

Any reason not to put this in google/main?


Diego.

Reply via email to