Math/Angle: Fix compilation & warning on GCC < 8
This commit is contained in:
parent
4c4822eef9
commit
5e45983953
|
|
@ -26,7 +26,7 @@ namespace Nz
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
Angle() = default;
|
Angle() = default;
|
||||||
Angle(T value);
|
Angle(T angle);
|
||||||
template<typename U> explicit Angle(const Angle<Unit, U>& Angle);
|
template<typename U> explicit Angle(const Angle<Unit, U>& Angle);
|
||||||
Angle(const Angle&) = default;
|
Angle(const Angle&) = default;
|
||||||
~Angle() = default;
|
~Angle() = default;
|
||||||
|
|
@ -51,8 +51,8 @@ namespace Nz
|
||||||
Angle<AngleUnit::Radian, T> ToRadianAngle() const;
|
Angle<AngleUnit::Radian, T> ToRadianAngle() const;
|
||||||
String ToString() const;
|
String ToString() const;
|
||||||
|
|
||||||
template<AngleUnit U = Unit, typename = std::enable_if_t<U != AngleUnit::Degree>> operator Angle<AngleUnit::Degree, T>();
|
template<AngleUnit U = Unit, typename = std::enable_if_t<U != AngleUnit::Degree>> operator Angle<AngleUnit::Degree, T>() const { return ToDegreeAngle(); } // GCC < 8 bug
|
||||||
template<AngleUnit U = Unit, typename = std::enable_if_t<U != AngleUnit::Radian>> operator Angle<AngleUnit::Radian, T>();
|
template<AngleUnit U = Unit, typename = std::enable_if_t<U != AngleUnit::Radian>> operator Angle<AngleUnit::Radian, T>() const { return ToRadianAngle(); } // GCC < 8 bug
|
||||||
|
|
||||||
Angle& operator=(const Angle&) = default;
|
Angle& operator=(const Angle&) = default;
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -150,8 +150,8 @@ namespace Nz
|
||||||
* \param value value of the angle
|
* \param value value of the angle
|
||||||
*/
|
*/
|
||||||
template<AngleUnit Unit, typename T>
|
template<AngleUnit Unit, typename T>
|
||||||
Angle<Unit, T>::Angle(T value) :
|
Angle<Unit, T>::Angle(T angle) :
|
||||||
value(value)
|
value(angle)
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -345,23 +345,23 @@ namespace Nz
|
||||||
* \brief Returns the degree angle that is equivalent to this one
|
* \brief Returns the degree angle that is equivalent to this one
|
||||||
* \return Equivalent degree angle
|
* \return Equivalent degree angle
|
||||||
*/
|
*/
|
||||||
template<AngleUnit Unit, typename T>
|
/*template<AngleUnit Unit, typename T>
|
||||||
template<AngleUnit U, typename>
|
template<AngleUnit U, typename>
|
||||||
Angle<Unit, T>::operator Angle<AngleUnit::Degree, T>()
|
Angle<Unit, T>::operator Angle<AngleUnit::Degree, T>() const
|
||||||
{
|
{
|
||||||
return ToDegreeAngle();
|
return ToDegreeAngle();
|
||||||
}
|
}*/
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
* \brief Converts the angle to a string representation
|
* \brief Converts the angle to a string representation
|
||||||
* \return String representation of the angle
|
* \return String representation of the angle
|
||||||
*/
|
*/
|
||||||
template<AngleUnit Unit, typename T>
|
/*template<AngleUnit Unit, typename T>
|
||||||
template<AngleUnit U, typename>
|
template<AngleUnit U, typename>
|
||||||
Angle<Unit, T>::operator Angle<AngleUnit::Radian, T>()
|
Angle<Unit, T>::operator Angle<AngleUnit::Radian, T>() const
|
||||||
{
|
{
|
||||||
return ToRadianAngle();
|
return ToRadianAngle();
|
||||||
}
|
}*/
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
* \brief Addition operator
|
* \brief Addition operator
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue