Fix gcc -Wdouble-promotion warnings

For some reason GCC uses the float version of sqrt even though all
arguments and results are floats.
This commit is contained in:
Vasily
2019-02-21 18:48:53 +01:00
committed by username223
parent edf14b6bf9
commit 60b9f71b9a
+3 -3
View File
@@ -29,10 +29,10 @@ float ChaperoneUtils::_getDistanceToChaperone(
{ // projected point outside of segment
float d_x = r0.v[0] - x.v[0];
float d_z = r0.v[2] - x.v[2];
float d1 = sqrt( d_x * d_x + d_z * d_z );
float d1 = sqrt( static_cast<float>( d_x * d_x + d_z * d_z ) );
d_x = r1.v[0] - x.v[0];
d_z = r1.v[2] - x.v[2];
float d2 = sqrt( d_x * d_x + d_z * d_z );
float d2 = sqrt( static_cast<float>( d_x * d_x + d_z * d_z ) );
if ( d1 < d2 )
{
d = d1;
@@ -52,7 +52,7 @@ float ChaperoneUtils::_getDistanceToChaperone(
x1_z = r0.v[2] + r * u_z;
float d_x = x1_x - x.v[0];
float d_z = x1_z - x.v[2];
d = sqrt( d_x * d_x + d_z * d_z );
d = sqrt( static_cast<float>( d_x * d_x + d_z * d_z ) );
}
if ( std::isnan( distance ) || d < distance )
{