diff options
| -rw-r--r-- | llvm/include/llvm/Support/TrailingObjects.h | 12 |
1 files changed, 5 insertions, 7 deletions
diff --git a/llvm/include/llvm/Support/TrailingObjects.h b/llvm/include/llvm/Support/TrailingObjects.h index 8719702e5e6..2bd25ace4f5 100644 --- a/llvm/include/llvm/Support/TrailingObjects.h +++ b/llvm/include/llvm/Support/TrailingObjects.h @@ -79,11 +79,6 @@ public: /// The base class for TrailingObjects* classes. class TrailingObjectsBase { -public: - /// Disable sized deallocation for all objects with trailing object storage; - /// the inferred size will typically not be correct. - void operator delete(void *P) { return ::operator delete(P); } - protected: /// OverloadToken's purpose is to allow specifying function overloads /// for different types, without actually taking the types as @@ -295,10 +290,13 @@ class TrailingObjects : private trailing_objects_internal::TrailingObjectsImpl< } public: - // Make these (privately inherited) members public. - using ParentType::operator delete; + // Make this (privately inherited) member public. using ParentType::OverloadToken; + /// Disable sized deallocation for all objects with trailing object storage; + /// the inferred size will typically not be correct. + void operator delete(void *P) { return ::operator delete(P); } + /// Returns a pointer to the trailing object array of the given type /// (which must be one of those specified in the class template). The /// array may have zero or more elements in it. |

