mirror of
https://github.com/g-truc/glm.git
synced 2024-11-26 18:24:35 +00:00
fix: no implicit vector copy
This commit is contained in:
parent
b016594ac3
commit
2d88860244
@ -78,7 +78,9 @@ namespace detail
|
||||
// Implicit basic constructors
|
||||
|
||||
GLM_FUNC_DECL tvec1();
|
||||
#ifndef GLM_NO_EXPLICIT_COPY
|
||||
GLM_FUNC_DECL tvec1(tvec1<T> const & v);
|
||||
#endif
|
||||
|
||||
//////////////////////////////////////
|
||||
// Explicit basic constructors
|
||||
@ -116,7 +118,9 @@ namespace detail
|
||||
//////////////////////////////////////
|
||||
// Unary arithmetic operators
|
||||
|
||||
#ifndef GLM_NO_EXPLICIT_COPY
|
||||
GLM_FUNC_DECL tvec1<T> & operator= (tvec1<T> const & v);
|
||||
#endif
|
||||
template <typename U>
|
||||
GLM_FUNC_DECL tvec1<T> & operator= (tvec1<U> const & v);
|
||||
|
||||
|
@ -73,6 +73,7 @@ namespace detail
|
||||
)
|
||||
{}
|
||||
|
||||
#ifndef GLM_NO_EXPLICIT_COPY
|
||||
template <typename T>
|
||||
GLM_FUNC_QUALIFIER tvec1<T>::tvec1
|
||||
(
|
||||
@ -80,6 +81,7 @@ namespace detail
|
||||
) :
|
||||
x(v.x)
|
||||
{}
|
||||
#endif
|
||||
|
||||
//////////////////////////////////////
|
||||
// Explicit basic constructors
|
||||
@ -148,6 +150,7 @@ namespace detail
|
||||
//////////////////////////////////////
|
||||
// Unary arithmetic operators
|
||||
|
||||
#ifndef GLM_NO_EXPLICIT_COPY
|
||||
template <typename T>
|
||||
GLM_FUNC_QUALIFIER tvec1<T> & tvec1<T>::operator=
|
||||
(
|
||||
@ -157,6 +160,7 @@ namespace detail
|
||||
this->x = v.x;
|
||||
return *this;
|
||||
}
|
||||
#endif
|
||||
|
||||
template <typename T>
|
||||
template <typename U>
|
||||
|
@ -107,7 +107,9 @@ namespace detail
|
||||
// Implicit basic constructors
|
||||
|
||||
GLM_FUNC_DECL tvec2();
|
||||
#ifndef GLM_NO_EXPLICIT_COPY
|
||||
GLM_FUNC_DECL tvec2(tvec2<T> const & v);
|
||||
#endif
|
||||
|
||||
//////////////////////////////////////
|
||||
// Explicit basic constructors
|
||||
@ -160,7 +162,9 @@ namespace detail
|
||||
//////////////////////////////////////
|
||||
// Unary arithmetic operators
|
||||
|
||||
#ifndef GLM_NO_EXPLICIT_COPY
|
||||
GLM_FUNC_DECL tvec2<T> & operator= (tvec2<T> const & v);
|
||||
#endif
|
||||
template <typename U>
|
||||
GLM_FUNC_DECL tvec2<T> & operator= (tvec2<U> const & v);
|
||||
|
||||
|
@ -76,6 +76,7 @@ namespace detail
|
||||
)
|
||||
{}
|
||||
|
||||
#ifndef GLM_NO_EXPLICIT_COPY
|
||||
template <typename T>
|
||||
GLM_FUNC_QUALIFIER tvec2<T>::tvec2
|
||||
(
|
||||
@ -84,6 +85,7 @@ namespace detail
|
||||
x(v.x),
|
||||
y(v.y)
|
||||
{}
|
||||
#endif
|
||||
|
||||
//////////////////////////////////////
|
||||
// Explicit basic constructors
|
||||
@ -179,6 +181,7 @@ namespace detail
|
||||
//////////////////////////////////////
|
||||
// Unary arithmetic operators
|
||||
|
||||
#ifndef GLM_NO_EXPLICIT_COPY
|
||||
template <typename T>
|
||||
GLM_FUNC_QUALIFIER tvec2<T> & tvec2<T>::operator=
|
||||
(
|
||||
@ -189,6 +192,7 @@ namespace detail
|
||||
this->y = v.y;
|
||||
return *this;
|
||||
}
|
||||
#endif
|
||||
|
||||
template <typename T>
|
||||
template <typename U>
|
||||
|
@ -108,7 +108,9 @@ namespace detail
|
||||
// Implicit basic constructors
|
||||
|
||||
GLM_FUNC_DECL tvec3();
|
||||
#ifndef GLM_NO_EXPLICIT_COPY
|
||||
GLM_FUNC_DECL tvec3(tvec3<T> const & v);
|
||||
#endif
|
||||
|
||||
//////////////////////////////////////
|
||||
// Explicit basic constructors
|
||||
@ -184,7 +186,9 @@ namespace detail
|
||||
//////////////////////////////////////
|
||||
// Unary arithmetic operators
|
||||
|
||||
#ifndef GLM_NO_EXPLICIT_COPY
|
||||
GLM_FUNC_DECL tvec3<T> & operator= (tvec3<T> const & v);
|
||||
#endif
|
||||
template <typename U>
|
||||
GLM_FUNC_DECL tvec3<T> & operator= (tvec3<U> const & v);
|
||||
|
||||
|
@ -77,6 +77,7 @@ namespace detail
|
||||
)
|
||||
{}
|
||||
|
||||
#ifndef GLM_NO_EXPLICIT_COPY
|
||||
template <typename T>
|
||||
GLM_FUNC_QUALIFIER tvec3<T>::tvec3
|
||||
(
|
||||
@ -86,6 +87,7 @@ namespace detail
|
||||
y(v.y),
|
||||
z(v.z)
|
||||
{}
|
||||
#endif
|
||||
|
||||
//////////////////////////////////////
|
||||
// Explicit basic constructors
|
||||
@ -228,6 +230,7 @@ namespace detail
|
||||
//////////////////////////////////////
|
||||
// Unary arithmetic operators
|
||||
|
||||
#ifndef GLM_NO_EXPLICIT_COPY
|
||||
template <typename T>
|
||||
GLM_FUNC_QUALIFIER tvec3<T>& tvec3<T>::operator=
|
||||
(
|
||||
@ -239,6 +242,7 @@ namespace detail
|
||||
this->z = v.z;
|
||||
return *this;
|
||||
}
|
||||
#endif
|
||||
|
||||
template <typename T>
|
||||
template <typename U>
|
||||
|
@ -109,7 +109,9 @@ namespace detail
|
||||
// Implicit basic constructors
|
||||
|
||||
GLM_FUNC_DECL tvec4();
|
||||
#ifndef GLM_NO_EXPLICIT_COPY
|
||||
GLM_FUNC_DECL tvec4(type const & v);
|
||||
#endif
|
||||
|
||||
//////////////////////////////////////
|
||||
// Explicit basic constructors
|
||||
@ -239,7 +241,9 @@ namespace detail
|
||||
//////////////////////////////////////
|
||||
// Unary arithmetic operators
|
||||
|
||||
#ifndef GLM_NO_EXPLICIT_COPY
|
||||
GLM_FUNC_DECL tvec4<T> & operator= (tvec4<T> const & v);
|
||||
#endif
|
||||
template <typename U>
|
||||
GLM_FUNC_DECL tvec4<T> & operator= (tvec4<U> const & v);
|
||||
|
||||
|
@ -78,6 +78,7 @@ namespace detail
|
||||
)
|
||||
{}
|
||||
|
||||
#ifndef GLM_NO_EXPLICIT_COPY
|
||||
template <typename T>
|
||||
GLM_FUNC_QUALIFIER tvec4<T>::tvec4
|
||||
(
|
||||
@ -88,6 +89,7 @@ namespace detail
|
||||
z(v.z),
|
||||
w(v.w)
|
||||
{}
|
||||
#endif
|
||||
|
||||
//////////////////////////////////////
|
||||
// Explicit basic constructors
|
||||
@ -367,6 +369,7 @@ namespace detail
|
||||
//////////////////////////////////////
|
||||
// Unary arithmetic operators
|
||||
|
||||
#ifndef GLM_NO_EXPLICIT_COPY
|
||||
template <typename T>
|
||||
GLM_FUNC_QUALIFIER tvec4<T> & tvec4<T>::operator=
|
||||
(
|
||||
@ -379,6 +382,7 @@ namespace detail
|
||||
this->w = v.w;
|
||||
return *this;
|
||||
}
|
||||
#endif
|
||||
|
||||
template <typename T>
|
||||
template <typename U>
|
||||
|
Loading…
Reference in New Issue
Block a user