From 4b8f1bf667fc69d2e30dca7784b15abf89462e8b Mon Sep 17 00:00:00 2001 From: Martin Schultz Date: Tue, 24 May 2016 15:06:32 +0200 Subject: [PATCH] fixes MSVC Community 2015 ICE The default constructors are now used as template specializations by postponing them below the template definition --- src/OpenMesh/Core/Geometry/Vector11T.hh | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/src/OpenMesh/Core/Geometry/Vector11T.hh b/src/OpenMesh/Core/Geometry/Vector11T.hh index 88464e67..28ad0b71 100644 --- a/src/OpenMesh/Core/Geometry/Vector11T.hh +++ b/src/OpenMesh/Core/Geometry/Vector11T.hh @@ -112,16 +112,6 @@ class VectorT { //-------------------------------------------------------------- constructors - /// default constructor creates uninitialized values. - constexpr VectorT() {} - - /** - * Creates a vector with all components set to v. - */ - explicit VectorT(const Scalar &v) { - vectorize(v); - } - template::type, typename = typename std::enable_if< @@ -133,6 +123,16 @@ class VectorT { "Not all components are convertible to Scalar."); } + /// default constructor creates uninitialized values. + constexpr VectorT() {} + + /** + * Creates a vector with all components set to v. + */ + explicit VectorT(const Scalar &v) { + vectorize(v); + } + VectorT(const VectorT &rhs) = default; VectorT(VectorT &&rhs) = default; VectorT &operator=(const VectorT &rhs) = default;