On 31 December 2015 at 09:57, Jakub Jelinek wrote:
> On Thu, Dec 31, 2015 at 10:49:18AM +0100, Dominik Vogt wrote:
>> This snippet ist from the Plumhall 2014 xvs test suite:
>>
>>   #if CXX03 || CXX11 || CXX14
>>   static float (*p1_)(float) = abs;
>>   ...
>>   checkthat(__LINE__, p1_ != 0);
>>   #endif
>>
>> (With the testsuite specific macros doing the obvious).  abs() is
>> declared as:
>>
>>   int abs(int j)
>
> I bet this depends on what headers are included.  Doesn't std::abs
> have various overloads, including float -> float one?

Yes.

> So, is <cmath> included?  Is there using namespace std; before this?

That would make it valid, or "using std::abs;". It's also required to
compile if <math.h> is included.

Reply via email to