Merge bitcoin/bitcoin#30406: refactor: modernize-use-equals-default

3333bae9b2 tidy: modernize-use-equals-default (MarcoFalke)

Pull request description:

  Prior to C++20, `modernize-use-equals-default` could have been problematic because it could turn a non-aggregate into an aggregate. The risk would be that aggregate initialization would be enabled where the author did not intend to enable it.

  With C++20, aggregate for those is forbidden either way. (https://www.open-std.org/jtc1/sc22/wg21/docs/papers/2018/p1008r1.pdf)

  So enabled it for code clarity, consistency, and possibly unlocking compiler optimizations. See https://clang.llvm.org/extra/clang-tidy/checks/modernize/use-equals-default.html

ACKs for top commit:
  stickies-v:
    ACK 3333bae9b2

Tree-SHA512: ab42ff01be7ca7e7d8b4c6a485e68426f59627d83dd827cf292304829562348dc17a52ee009f5f6f3c1c2081d7166ffac4baef23197ebeba8de7767c6ddfe255
This commit is contained in:
merge-script
2024-07-11 19:08:46 +01:00
53 changed files with 72 additions and 76 deletions

View File

@@ -265,7 +265,7 @@ public:
return false;
}
virtual ~BaseSignatureChecker() {}
virtual ~BaseSignatureChecker() = default;
};
/** Enum to specify what *TransactionSignatureChecker's behavior should be

View File

@@ -305,7 +305,7 @@ struct InputStack {
//! Data elements.
std::vector<std::vector<unsigned char>> stack;
//! Construct an empty stack (valid).
InputStack() {}
InputStack() = default;
//! Construct a valid single-element stack (with an element up to 75 bytes).
InputStack(std::vector<unsigned char> in) : size(in.size() + 1), stack(Vector(std::move(in))) {}
//! Change availability

View File

@@ -430,7 +430,7 @@ protected:
return *this;
}
public:
CScript() { }
CScript() = default;
CScript(const_iterator pbegin, const_iterator pend) : CScriptBase(pbegin, pend) { }
CScript(std::vector<unsigned char>::const_iterator pbegin, std::vector<unsigned char>::const_iterator pend) : CScriptBase(pbegin, pend) { }
CScript(const unsigned char* pbegin, const unsigned char* pend) : CScriptBase(pbegin, pend) { }
@@ -569,7 +569,7 @@ struct CScriptWitness
std::vector<std::vector<unsigned char> > stack;
// Some compilers complain without a default constructor
CScriptWitness() { }
CScriptWitness() = default;
bool IsNull() const { return stack.empty(); }

View File

@@ -27,7 +27,7 @@ struct CMutableTransaction;
/** Interface for signature creators. */
class BaseSignatureCreator {
public:
virtual ~BaseSignatureCreator() {}
virtual ~BaseSignatureCreator() = default;
virtual const BaseSignatureChecker& Checker() const =0;
/** Create a singular (non-script) signature. */
@@ -89,7 +89,7 @@ struct SignatureData {
std::map<std::vector<uint8_t>, std::vector<uint8_t>> ripemd160_preimages; ///< Mapping from a RIPEMD160 hash to its preimage provided to solve a Script
std::map<std::vector<uint8_t>, std::vector<uint8_t>> hash160_preimages; ///< Mapping from a HASH160 hash to its preimage provided to solve a Script
SignatureData() {}
SignatureData() = default;
explicit SignatureData(const CScript& script) : scriptSig(script) {}
void MergeSignatureData(SignatureData sigdata);
};

View File

@@ -150,7 +150,7 @@ std::optional<std::vector<std::tuple<int, std::vector<unsigned char>, int>>> Inf
class SigningProvider
{
public:
virtual ~SigningProvider() {}
virtual ~SigningProvider() = default;
virtual bool GetCScript(const CScriptID &scriptid, CScript& script) const { return false; }
virtual bool HaveCScript(const CScriptID &scriptid) const { return false; }
virtual bool GetPubKey(const CKeyID &address, CPubKey& pubkey) const { return false; }