Hi Guys,
Here is another one. The following code compiles without complaint with g++ 4.7.0.
template < typename T >
class Float
{
typedef typename UIntWithSizeS< sizeof ( T ) >::UInt Bits;
...
static T ReinterpretBits ( const Bits bits ) {...}
...
static T Infinity () {
return ReinterpretBits ( k_exponent_bit_mask );
}
...
}
Here, CDT 8.1 states that the call to ReinterpretBits is in error as the method takes only void.
Invalid arguments 'Candidates are: #0 ReinterpretBits(void)'
As CDT 8.0 finds no such error this appears to be a bug. Indeed there are CDT 8.1 errors wherever the Bits typedef is referenced.
Opinions?