diff --git a/src/script/miniscript.h b/src/script/miniscript.h index eba2fe2e754..ce5d2fa5323 100644 --- a/src/script/miniscript.h +++ b/src/script/miniscript.h @@ -1821,9 +1821,7 @@ std::optional ParseKey(const std::string& func, std::span& in, } /** Parse a hex string fully contained within a fragment with the name given by 'func' */ -template -std::optional> ParseHexStr(const std::string& func, std::span& in, const size_t expected_size, - const Ctx& ctx) +inline std::optional> ParseHexStr(const std::string& func, std::span& in, const size_t expected_size) { std::span expr = script::Expr(in); if (!script::Func(func, expr)) return {}; @@ -2003,22 +2001,22 @@ inline std::optional> Parse(std::span in, const Ctx& ctx) constructed.emplace_back(internal::NoDupCheck{}, ctx.MsContext(), Fragment::PK_H, Vector(std::move(*key))); script_size += 23; } else if (Const("sha256(", in, /*skip=*/false)) { - std::optional> hash = ParseHexStr("sha256", in, 32, ctx); + std::optional> hash = ParseHexStr("sha256", in, 32); if (!hash) return {}; constructed.emplace_back(internal::NoDupCheck{}, ctx.MsContext(), Fragment::SHA256, std::move(*hash)); script_size += 38; } else if (Const("ripemd160(", in, /*skip=*/false)) { - std::optional> hash = ParseHexStr("ripemd160", in, 20, ctx); + std::optional> hash = ParseHexStr("ripemd160", in, 20); if (!hash) return {}; constructed.emplace_back(internal::NoDupCheck{}, ctx.MsContext(), Fragment::RIPEMD160, std::move(*hash)); script_size += 26; } else if (Const("hash256(", in, /*skip=*/false)) { - std::optional> hash = ParseHexStr("hash256", in, 32, ctx); + std::optional> hash = ParseHexStr("hash256", in, 32); if (!hash) return {}; constructed.emplace_back(internal::NoDupCheck{}, ctx.MsContext(), Fragment::HASH256, std::move(*hash)); script_size += 38; } else if (Const("hash160(", in, /*skip=*/false)) { - std::optional> hash = ParseHexStr("hash160", in, 20, ctx); + std::optional> hash = ParseHexStr("hash160", in, 20); if (!hash) return {}; constructed.emplace_back(internal::NoDupCheck{}, ctx.MsContext(), Fragment::HASH160, std::move(*hash)); script_size += 26;