aboutsummaryrefslogtreecommitdiff
path: root/src/policy/policy.cpp
diff options
context:
space:
mode:
authorMarcoFalke <falke.marco@gmail.com>2021-12-03 10:44:26 +0100
committerMarcoFalke <falke.marco@gmail.com>2021-12-03 10:44:37 +0100
commit8b1de78577a02300340cec37e26cd6418ef6e645 (patch)
treeed76866aede610e6759fe76f841aa1613084aa56 /src/policy/policy.cpp
parentfd1c9e26d30c0e7a891f63955fd42f61b4216cc0 (diff)
parent11daf6ceb1d9ea1f8d638b123eecfe39d162a7c3 (diff)
Merge bitcoin/bitcoin#23413: Replace MakeSpan helper with Span deduction guide
11daf6ceb1d9ea1f8d638b123eecfe39d162a7c3 More Span simplifications (Pieter Wuille) 568dd2f83900a11a4dbba1250722791a135bf0a9 Replace MakeSpan helper with Span deduction guide (Pieter Wuille) Pull request description: C++17 supports [user-defined deduction guides](https://en.cppreference.com/w/cpp/language/class_template_argument_deduction), allowing class constructors to be invoked without specifying class template arguments. Instead, the code can contain rules to infer the template arguments from the constructor argument types. This alleviates the need for the `MakeSpan` helper. Convert the existing MakeSpan rules into deduction rules for `Span` itself, and replace all invocations of `MakeSpan` with just `Span` ones. ACKs for top commit: MarcoFalke: re-ACK 11daf6ceb1d9ea1f8d638b123eecfe39d162a7c3 Only change is removing a hunk in the tests 🌕 Tree-SHA512: 10f3e82e4338f39d9b7b407cd11aac7ebe1e9191b58e3d7f4e5e338a4636c0e126b4a1d912127c7446f57ba356c8d6544482e47f97901efea6a54fffbfd7895f
Diffstat (limited to 'src/policy/policy.cpp')
-rw-r--r--src/policy/policy.cpp2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/policy/policy.cpp b/src/policy/policy.cpp
index 2c30b20d5b..5d0bb68ec6 100644
--- a/src/policy/policy.cpp
+++ b/src/policy/policy.cpp
@@ -251,7 +251,7 @@ bool IsWitnessStandard(const CTransaction& tx, const CCoinsViewCache& mapInputs)
// - No annexes
if (witnessversion == 1 && witnessprogram.size() == WITNESS_V1_TAPROOT_SIZE && !p2sh) {
// Taproot spend (non-P2SH-wrapped, version 1, witness program size 32; see BIP 341)
- auto stack = MakeSpan(tx.vin[i].scriptWitness.stack);
+ Span stack{tx.vin[i].scriptWitness.stack};
if (stack.size() >= 2 && !stack.back().empty() && stack.back()[0] == ANNEX_TAG) {
// Annexes are nonstandard as long as no semantics are defined for them.
return false;