diff --git a/include/boost/container/pmr/monotonic_buffer_resource.hpp b/include/boost/container/pmr/monotonic_buffer_resource.hpp index 89a796e..6799f4f 100644 --- a/include/boost/container/pmr/monotonic_buffer_resource.hpp +++ b/include/boost/container/pmr/monotonic_buffer_resource.hpp @@ -160,18 +160,18 @@ class BOOST_CONTAINER_DECL monotonic_buffer_resource //! then allocate the return block from the newly-allocated internal `current_buffer`. //! //! Throws: Nothing unless `upstream_resource()->allocate()` throws. - void* do_allocate(std::size_t bytes, std::size_t alignment) BOOST_OVERRIDE; + virtual void* do_allocate(std::size_t bytes, std::size_t alignment) BOOST_OVERRIDE; //! Effects: None //! //! Throws: Nothing //! //! Remarks: Memory used by this resource increases monotonically until its destruction. - void do_deallocate(void* p, std::size_t bytes, std::size_t alignment) BOOST_NOEXCEPT BOOST_OVERRIDE; + virtual void do_deallocate(void* p, std::size_t bytes, std::size_t alignment) BOOST_NOEXCEPT BOOST_OVERRIDE; //! Returns: //! `this == dynamic_cast(&other)`. - bool do_is_equal(const memory_resource& other) const BOOST_NOEXCEPT BOOST_OVERRIDE; + virtual bool do_is_equal(const memory_resource& other) const BOOST_NOEXCEPT BOOST_OVERRIDE; }; } //namespace pmr { diff --git a/include/boost/container/pmr/resource_adaptor.hpp b/include/boost/container/pmr/resource_adaptor.hpp index 3216350..3a72786 100644 --- a/include/boost/container/pmr/resource_adaptor.hpp +++ b/include/boost/container/pmr/resource_adaptor.hpp @@ -144,7 +144,7 @@ class resource_adaptor_imp protected: //! Returns: Allocated memory obtained by calling m_alloc.allocate. The size and alignment //! of the allocated memory shall meet the requirements for a class derived from memory_resource. - virtual void* do_allocate(std::size_t bytes, std::size_t alignment) + virtual void* do_allocate(std::size_t bytes, std::size_t alignment) BOOST_OVERRIDE { if (alignment <= priv_guaranteed_allocator_alignment()) return this->ebo_alloc_t::get().allocate(bytes); @@ -156,7 +156,7 @@ class resource_adaptor_imp //! subsequently deallocated. //! //! Effects: Returns memory to the allocator using m_alloc.deallocate(). - virtual void do_deallocate(void* p, std::size_t bytes, std::size_t alignment) + virtual void do_deallocate(void* p, std::size_t bytes, std::size_t alignment) BOOST_OVERRIDE { if (alignment <= priv_guaranteed_allocator_alignment()) this->ebo_alloc_t::get().deallocate((char*)p, bytes); @@ -167,7 +167,7 @@ class resource_adaptor_imp //! Let p be dynamic_cast(&other). //! //! Returns: false if p is null, otherwise the value of m_alloc == p->m_alloc. - virtual bool do_is_equal(const memory_resource& other) const BOOST_NOEXCEPT + virtual bool do_is_equal(const memory_resource& other) const BOOST_NOEXCEPT BOOST_OVERRIDE { const resource_adaptor_imp* p = dynamic_cast(&other); return p && p->ebo_alloc_t::get() == this->ebo_alloc_t::get(); diff --git a/include/boost/container/pmr/synchronized_pool_resource.hpp b/include/boost/container/pmr/synchronized_pool_resource.hpp index 31642e8..c4186f3 100644 --- a/include/boost/container/pmr/synchronized_pool_resource.hpp +++ b/include/boost/container/pmr/synchronized_pool_resource.hpp @@ -103,13 +103,13 @@ class BOOST_CONTAINER_DECL synchronized_pool_resource protected: //! @copydoc ::boost::container::pmr::unsynchronized_pool_resource::do_allocate() - void* do_allocate(std::size_t bytes, std::size_t alignment) BOOST_OVERRIDE; + virtual void* do_allocate(std::size_t bytes, std::size_t alignment) BOOST_OVERRIDE; //! @copydoc ::boost::container::pmr::unsynchronized_pool_resource::do_deallocate(void*,std::size_t,std::size_t) - void do_deallocate(void* p, std::size_t bytes, std::size_t alignment) BOOST_OVERRIDE; + virtual void do_deallocate(void* p, std::size_t bytes, std::size_t alignment) BOOST_OVERRIDE; //! @copydoc ::boost::container::pmr::unsynchronized_pool_resource::do_is_equal(const memory_resource&)const - bool do_is_equal(const memory_resource& other) const BOOST_NOEXCEPT BOOST_OVERRIDE; + virtual bool do_is_equal(const memory_resource& other) const BOOST_NOEXCEPT BOOST_OVERRIDE; //Non-standard observers public: diff --git a/include/boost/container/pmr/unsynchronized_pool_resource.hpp b/include/boost/container/pmr/unsynchronized_pool_resource.hpp index 1b2406d..65439d9 100644 --- a/include/boost/container/pmr/unsynchronized_pool_resource.hpp +++ b/include/boost/container/pmr/unsynchronized_pool_resource.hpp @@ -134,18 +134,18 @@ class BOOST_CONTAINER_DECL unsynchronized_pool_resource //! using `upstream_resource()->allocate()`. //! //! Throws: Nothing unless `upstream_resource()->allocate()` throws. - void* do_allocate(std::size_t bytes, std::size_t alignment) BOOST_OVERRIDE; + virtual void* do_allocate(std::size_t bytes, std::size_t alignment) BOOST_OVERRIDE; //! Effects: Return the memory at p to the pool. It is unspecified if or under //! what circumstances this operation will result in a call to //! `upstream_resource()->deallocate()`. //! //! Throws: Nothing. - void do_deallocate(void* p, std::size_t bytes, std::size_t alignment) BOOST_OVERRIDE; + virtual void do_deallocate(void* p, std::size_t bytes, std::size_t alignment) BOOST_OVERRIDE; //! Returns: //! `this == dynamic_cast(&other)`. - bool do_is_equal(const memory_resource& other) const BOOST_NOEXCEPT BOOST_OVERRIDE; + virtual bool do_is_equal(const memory_resource& other) const BOOST_NOEXCEPT BOOST_OVERRIDE; //Non-standard observers public: diff --git a/include/boost/container/throw_exception.hpp b/include/boost/container/throw_exception.hpp index 84d26dd..8bc17e0 100644 --- a/include/boost/container/throw_exception.hpp +++ b/include/boost/container/throw_exception.hpp @@ -59,7 +59,7 @@ class BOOST_SYMBOL_VISIBLE exception : std_exception_t(), m_msg(msg) {} - virtual const char *what() const BOOST_NOEXCEPT_OR_NOTHROW + virtual const char *what() const BOOST_NOEXCEPT_OR_NOTHROW BOOST_OVERRIDE { return m_msg ? m_msg : "unknown boost::container exception"; } private: diff --git a/test/derived_from_memory_resource.hpp b/test/derived_from_memory_resource.hpp index a8097a7..11ec376 100644 --- a/test/derived_from_memory_resource.hpp +++ b/test/derived_from_memory_resource.hpp @@ -21,10 +21,10 @@ class derived_from_memory_resource : id(i) {} - virtual ~derived_from_memory_resource() + virtual ~derived_from_memory_resource() BOOST_OVERRIDE { destructor_called = true; } - virtual void* do_allocate(std::size_t bytes, std::size_t alignment) + virtual void* do_allocate(std::size_t bytes, std::size_t alignment) BOOST_OVERRIDE { do_allocate_called = true; do_allocate_bytes = bytes; @@ -32,7 +32,7 @@ class derived_from_memory_resource return do_allocate_return; } - virtual void do_deallocate(void* p, std::size_t bytes, std::size_t alignment) + virtual void do_deallocate(void* p, std::size_t bytes, std::size_t alignment) BOOST_OVERRIDE { do_deallocate_called = true; do_deallocate_p = p; @@ -40,7 +40,7 @@ class derived_from_memory_resource do_deallocate_alignment = alignment; } - virtual bool do_is_equal(const boost::container::pmr::memory_resource& other) const BOOST_NOEXCEPT + virtual bool do_is_equal(const boost::container::pmr::memory_resource& other) const BOOST_NOEXCEPT BOOST_OVERRIDE { do_is_equal_called = true; do_is_equal_other = &other; diff --git a/test/memory_resource_logger.hpp b/test/memory_resource_logger.hpp index 7649a80..0f234a9 100644 --- a/test/memory_resource_logger.hpp +++ b/test/memory_resource_logger.hpp @@ -35,10 +35,10 @@ class memory_resource_logger , m_mismatches() {} - virtual ~memory_resource_logger() + virtual ~memory_resource_logger() BOOST_OVERRIDE { this->reset(); } - virtual void* do_allocate(std::size_t bytes, std::size_t alignment) + virtual void* do_allocate(std::size_t bytes, std::size_t alignment) BOOST_OVERRIDE { char *addr =(char*)std::malloc(bytes); if(!addr){ @@ -52,7 +52,7 @@ class memory_resource_logger return addr; } - virtual void do_deallocate(void* p, std::size_t bytes, std::size_t alignment) + virtual void do_deallocate(void* p, std::size_t bytes, std::size_t alignment) BOOST_OVERRIDE { std::size_t i = 0, max = m_info.size(); while(i != max && m_info[i].address != p){ @@ -69,7 +69,7 @@ class memory_resource_logger } } - virtual bool do_is_equal(const boost::container::pmr::memory_resource& other) const BOOST_NOEXCEPT + virtual bool do_is_equal(const boost::container::pmr::memory_resource& other) const BOOST_NOEXCEPT BOOST_OVERRIDE { return static_cast(this) == &other; }