@@ -3240,6 +3240,11 @@ auto UnpackStructImpl(const T& t, MakeIndexSequence<17>, char) {
32403240  const  auto & [a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q] = t;
32413241  return  std::tie (a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q);
32423242}
3243+ template  <typename  T>
3244+ auto  UnpackStructImpl (const  T& t, MakeIndexSequence<18 >, char ) {
3245+   const  auto & [a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r] = t;
3246+   return  std::tie (a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r);
3247+ }
32433248#endif   //  defined(__cpp_structured_bindings)
32443249
32453250template  <size_t  I, typename  T>
@@ -3306,8 +3311,8 @@ class FieldsAreMatcherImpl<Struct, IndexSequence<I...>>
33063311    std::vector<StringMatchResultListener> inner_listener (sizeof ...(I));
33073312
33083313    VariadicExpand (
3309-         {failed_pos == ~size_t {}  && !std::get<I>(matchers_).MatchAndExplain (
3310-                                          std::get<I>(tuple), &inner_listener[I])
3314+         {failed_pos == ~size_t {}&& !std::get<I>(matchers_).MatchAndExplain (
3315+                            std::get<I>(tuple), &inner_listener[I])
33113316             ? failed_pos = I
33123317             : 0  ...});
33133318    if  (failed_pos != ~size_t {}) {
0 commit comments