From f1456ef650d688cc8a3a94bb1e9a2e6f53d2357b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20Vondru=C5=A1?= Date: Sun, 29 Jun 2014 22:50:32 +0200 Subject: [PATCH] GCC 4.5 compatibility: avoid multiple definition linker errors. --- src/Magnum/Platform/AbstractXApplication.h | 2 +- src/Magnum/Platform/GlutApplication.h | 2 +- src/Magnum/Platform/Implementation/EglContextHandler.h | 2 +- src/Magnum/Platform/Implementation/GlxContextHandler.h | 2 +- src/Magnum/Platform/Sdl2Application.h | 2 +- src/Magnum/SceneGraph/AbstractTransformation.h | 2 +- src/Magnum/SceneGraph/AbstractTranslation.h | 4 ++-- src/Magnum/Shaders/AbstractVector.h | 4 ++-- src/Magnum/Shapes/shapeImplementation.h | 2 +- 9 files changed, 11 insertions(+), 11 deletions(-) diff --git a/src/Magnum/Platform/AbstractXApplication.h b/src/Magnum/Platform/AbstractXApplication.h index 49397ca48..6ba9ea40e 100644 --- a/src/Magnum/Platform/AbstractXApplication.h +++ b/src/Magnum/Platform/AbstractXApplication.h @@ -341,7 +341,7 @@ class AbstractXApplication::InputEvent { }; #ifdef CORRADE_GCC45_COMPATIBILITY -AbstractXApplication::InputEvent::~InputEvent() = default; +inline AbstractXApplication::InputEvent::~InputEvent() = default; #endif CORRADE_ENUMSET_OPERATORS(AbstractXApplication::InputEvent::Modifiers) diff --git a/src/Magnum/Platform/GlutApplication.h b/src/Magnum/Platform/GlutApplication.h index ae48b9655..2bf623392 100644 --- a/src/Magnum/Platform/GlutApplication.h +++ b/src/Magnum/Platform/GlutApplication.h @@ -435,7 +435,7 @@ class GlutApplication::InputEvent { }; #ifdef CORRADE_GCC45_COMPATIBILITY -GlutApplication::InputEvent::~InputEvent() = default; +inline GlutApplication::InputEvent::~InputEvent() = default; #endif /** diff --git a/src/Magnum/Platform/Implementation/EglContextHandler.h b/src/Magnum/Platform/Implementation/EglContextHandler.h index 91751b637..8c9b7a551 100644 --- a/src/Magnum/Platform/Implementation/EglContextHandler.h +++ b/src/Magnum/Platform/Implementation/EglContextHandler.h @@ -79,7 +79,7 @@ class EglContextHandler: public AbstractContextHandler class AbstractTransformation { virtual void doResetTransformation() = 0; }; -template AbstractTransformation::~AbstractTransformation() = default; +template inline AbstractTransformation::~AbstractTransformation() = default; /** @brief Transformation type diff --git a/src/Magnum/SceneGraph/AbstractTranslation.h b/src/Magnum/SceneGraph/AbstractTranslation.h index 293891501..8b327c918 100644 --- a/src/Magnum/SceneGraph/AbstractTranslation.h +++ b/src/Magnum/SceneGraph/AbstractTranslation.h @@ -82,9 +82,9 @@ class AbstractTranslation: public AbstractTransformation { virtual void doTranslate(const typename DimensionTraits::VectorType& vector, TransformationType type) = 0; }; -template AbstractTranslation::AbstractTranslation() = default; +template inline AbstractTranslation::AbstractTranslation() = default; -template AbstractTranslation::~AbstractTranslation() = default; +template inline AbstractTranslation::~AbstractTranslation() = default; #ifndef CORRADE_GCC46_COMPATIBILITY /** diff --git a/src/Magnum/Shaders/AbstractVector.h b/src/Magnum/Shaders/AbstractVector.h index 1625e59d0..ec184d87b 100644 --- a/src/Magnum/Shaders/AbstractVector.h +++ b/src/Magnum/Shaders/AbstractVector.h @@ -78,8 +78,8 @@ typedef AbstractVector<2> AbstractVector2D; typedef AbstractVector<3> AbstractVector3D; /* GCC 4.5 doesn't like it defaulted in class body */ -template AbstractVector::AbstractVector() = default; -template AbstractVector::~AbstractVector() = default; +template inline AbstractVector::AbstractVector() = default; +template inline AbstractVector::~AbstractVector() = default; }} diff --git a/src/Magnum/Shapes/shapeImplementation.h b/src/Magnum/Shapes/shapeImplementation.h index 62ca7bb8c..cbaf316d8 100644 --- a/src/Magnum/Shapes/shapeImplementation.h +++ b/src/Magnum/Shapes/shapeImplementation.h @@ -183,7 +183,7 @@ template struct Shape: AbstractShape { } }; -template Shape::Shape() = default; +template inline Shape::Shape() = default; }}}