diff --git a/src/frontend/decoder/decoder_detail.h b/src/frontend/decoder/decoder_detail.h index 8b7594a2..99e3b0c4 100644 --- a/src/frontend/decoder/decoder_detail.h +++ b/src/frontend/decoder/decoder_detail.h @@ -153,11 +153,11 @@ public: constexpr size_t args_count = mp::FunctionInfo::args_count; using Iota = std::make_index_sequence; - const auto mask_and_expect = GetMaskAndExpect(bitstring); - const auto arg_info = GetArgInfo(bitstring); - const auto proxy_fn = VisitorCaller::Make(Iota(), fn, std::get<0>(arg_info), std::get<1>(arg_info)); + const auto [mask, expect] = GetMaskAndExpect(bitstring); + const auto [arg_masks, arg_shifts] = GetArgInfo(bitstring); + const auto proxy_fn = VisitorCaller::Make(Iota(), fn, arg_masks, arg_shifts); - return MatcherT(name, std::get<0>(mask_and_expect), std::get<1>(mask_and_expect), proxy_fn); + return MatcherT(name, mask, expect, proxy_fn); } };