mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-01-01 00:33:09 +00:00
[Allocator] Hack around the fact that GCC can't compile the
static_assert added in r206225. I'm looking into a proper fix, but wanted the bots back. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@206226 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
ebfe4d7fee
commit
75ba212653
@ -50,12 +50,14 @@ public:
|
|||||||
/// \brief Allocate \a Size bytes of \a Alignment aligned memory. This method
|
/// \brief Allocate \a Size bytes of \a Alignment aligned memory. This method
|
||||||
/// must be implemented by \c DerivedT.
|
/// must be implemented by \c DerivedT.
|
||||||
void *Allocate(size_t Size, size_t Alignment) {
|
void *Allocate(size_t Size, size_t Alignment) {
|
||||||
|
#ifdef __clang__
|
||||||
static_assert(static_cast<void *(AllocatorBase::*)(size_t, size_t)>(
|
static_assert(static_cast<void *(AllocatorBase::*)(size_t, size_t)>(
|
||||||
&AllocatorBase::Allocate) !=
|
&AllocatorBase::Allocate) !=
|
||||||
static_cast<void *(DerivedT::*)(size_t, size_t)>(
|
static_cast<void *(DerivedT::*)(size_t, size_t)>(
|
||||||
&DerivedT::Allocate),
|
&DerivedT::Allocate),
|
||||||
"Class derives from AllocatorBase without implementing the "
|
"Class derives from AllocatorBase without implementing the "
|
||||||
"core Allocate(size_t, size_t) overload!");
|
"core Allocate(size_t, size_t) overload!");
|
||||||
|
#endif
|
||||||
return static_cast<DerivedT *>(this)->Allocate(Size, Alignment);
|
return static_cast<DerivedT *>(this)->Allocate(Size, Alignment);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user