Skip to content

Commit d27e1e4

Browse files
committed
Fix compilation error on older compilers
1 parent a23fd3a commit d27e1e4

2 files changed

Lines changed: 12 additions & 4 deletions

File tree

include/class_loader/interface_traits.hpp

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -162,6 +162,14 @@ template<class Base, class ... Args>
162162
constexpr bool is_interface_constructible_v =
163163
is_interface_constructible<Base, Args...>::value;
164164

165+
namespace impl
166+
{
167+
168+
template<class ...>
169+
constexpr bool false_v = false;
170+
171+
} // namespace impl
172+
165173
} // namespace class_loader
166174

167175
#endif // CLASS_LOADER__INTERFACE_TRAITS_HPP_

include/class_loader/meta_object.hpp

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -154,9 +154,9 @@ class CLASS_LOADER_PUBLIC AbstractMetaObjectBase
154154
AbstractMetaObjectBaseImpl * impl_;
155155
};
156156

157-
template<class ...>
157+
template<class ... Ts>
158158
class AbstractMetaObjectImpl {
159-
static_assert(false, "Base template selected.");
159+
static_assert(false_v<Ts...>, "Base template selected.");
160160
};
161161

162162
template<class B, class ... Args>
@@ -204,9 +204,9 @@ class AbstractMetaObject : public AbstractMetaObjectImpl<interface_constructor_s
204204
AbstractMetaObject & operator=(const AbstractMetaObject &);
205205
};
206206

207-
template<class ...>
207+
template<class ... Ts>
208208
class MetaObjectImpl {
209-
static_assert(false, "Base template selected.");
209+
static_assert(false_v<Ts...>, "Base template selected.");
210210
};
211211

212212
template<class C, class B, class ... Args>

0 commit comments

Comments
 (0)