[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: ambiguous call to "pow(int, unsigned int&)" in __magick_read__.cc:76
From: |
c. |
Subject: |
Re: ambiguous call to "pow(int, unsigned int&)" in __magick_read__.cc:763 |
Date: |
Sun, 28 Aug 2011 20:22:44 +0200 |
On 27 Aug 2011, at 20:03, Jordi Gutiérrez Hermoso wrote:
> 2011/8/27 c. <address@hidden>:
>>
>> On 27 Aug 2011, at 18:37, Jordi Gutiérrez Hermoso wrote:
>>
>>> If that's the version of pow you intended to call, there is nothing
>>> wrong in disambiguating the call with a cast, especially if it's
>>> not a C-style cast. If that fixes your build, I suggest you push
>>> that patch. I am not seeing this problem on a more recent g++.
>>
>> I was just concerned that casting back-and-forth from int to double
>> might introduce some unexpected behaviour due to roundoff, do you
>> think it is always safe to use that approach to do power elevation
>> with integer inputs?
>
> The precision of an int is less than 52 bits in all architectures I
> know of, which is the precision of a double, so it is very unlikely to
> introduce a problem to cast an int to a double. In a more dubious
> situation (e.g. casting a long to a double), it may be recommended to
> use Boost's numeric_cast functions.
>
> We've avoided Boost dependencies so far, but Boost is a very respected
> library from which the C++ standard library is made nowadays, so I
> don't think we should shy away from it if we see that it solves a
> problem for us particularly well.
>
> - Jordi G. H.
I see at other places in the file the same problem is handled by
// FIXME -- maybe simply using bit shifting would be better?
unsigned int div_factor = pow (2.0, static_cast<int> (bitdepth)) - 1;
do, is it OK if I push the attached patch?
c.
open_aEwDTw55.txt
Description: Text document
- ambiguous call to "pow(int, unsigned int&)" in __magick_read__.cc:763, Carlo de Falco, 2011/08/27
- Re: ambiguous call to "pow(int, unsigned int&)" in __magick_read__.cc:763, Ben Abbott, 2011/08/27
- Re: ambiguous call to "pow(int, unsigned int&)" in __magick_read__.cc:763, Jordi Gutiérrez Hermoso, 2011/08/27
- Re: ambiguous call to "pow(int, unsigned int&)" in __magick_read__.cc:763, Júlio Hoffimann, 2011/08/27
- Re: ambiguous call to "pow(int, unsigned int&)" in __magick_read__.cc:763, c., 2011/08/27
- Re: ambiguous call to "pow(int, unsigned int&)" in __magick_read__.cc:763, Júlio Hoffimann, 2011/08/27
- Re: ambiguous call to "pow(int, unsigned int&)" in __magick_read__.cc:763, Jordi Gutiérrez Hermoso, 2011/08/27
- Re: ambiguous call to "pow(int, unsigned int&)" in __magick_read__.cc:763, Júlio Hoffimann, 2011/08/27
- Re: ambiguous call to "pow(int, unsigned int&)" in __magick_read__.cc:763, Jussi Lehtola, 2011/08/27
- Re: ambiguous call to "pow(int, unsigned int&)" in __magick_read__.cc:763,
c. <=
- Re: ambiguous call to "pow(int, unsigned int&)" in __magick_read__.cc:763, Jordi Gutiérrez Hermoso, 2011/08/28
- Re: ambiguous call to "pow(int, unsigned int&)" in __magick_read__.cc:763, c., 2011/08/29