From 2fc16d7aa23157fe46260d4b2e8236758c369883 Mon Sep 17 00:00:00 2001 From: John Newbery Date: Tue, 29 Oct 2019 10:05:39 -0400 Subject: [PATCH] fixup: make ValidationState abstract --- src/Makefile.am | 1 + src/consensus/validation.cpp | 7 +++++++ src/consensus/validation.h | 4 ++-- 3 files changed, 10 insertions(+), 2 deletions(-) create mode 100644 src/consensus/validation.cpp diff --git a/src/Makefile.am b/src/Makefile.am index d50524a8ae7be2..196ea02dece199 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -418,6 +418,7 @@ libbitcoin_consensus_a_SOURCES = \ consensus/merkle.h \ consensus/params.h \ consensus/tx_check.cpp \ + consensus/validation.cpp \ consensus/validation.h \ hash.cpp \ hash.h \ diff --git a/src/consensus/validation.cpp b/src/consensus/validation.cpp new file mode 100644 index 00000000000000..f19530cf492e0c --- /dev/null +++ b/src/consensus/validation.cpp @@ -0,0 +1,7 @@ +// Copyright (c) 2019 The Bitcoin Core developers +// Distributed under the MIT software license, see the accompanying +// file COPYING or http://www.opensource.org/licenses/mit-license.php. + +#include + +ValidationState::~ValidationState() {} diff --git a/src/consensus/validation.h b/src/consensus/validation.h index 56a352b501e757..f948b576f11cde 100644 --- a/src/consensus/validation.h +++ b/src/consensus/validation.h @@ -92,8 +92,8 @@ class ValidationState { if (m_mode != MODE_ERROR) m_mode = MODE_INVALID; } public: - // We use ValidationState polymorphically. Have a virtual destructor - virtual ~ValidationState() {} + // ValidationState is abstract. Have a pure virtual destructor. + virtual ~ValidationState() = 0; ValidationState() : m_mode(MODE_VALID) {} bool Error(const std::string& reject_reason)