diff --git a/src/hb-algs.hh b/src/hb-algs.hh index 779d3b70f..e54c6b434 100644 --- a/src/hb-algs.hh +++ b/src/hb-algs.hh @@ -73,7 +73,7 @@ struct /* Pointer-to-member-function. */ template auto impl (Appl&& a, hb_priority<2>, Val1 &&v1, Vals &&...vs) const HB_AUTO_RETURN - (hb_forward (hb_deref_pointer (v1)).*a (hb_forward (vs...))) + (hb_forward (hb_deref_pointer (v1)).*a (hb_forward (vs)...)) /* Pointer-to-member. */ template auto @@ -83,7 +83,7 @@ struct /* Operator(). */ template auto impl (Appl&& a, hb_priority<0>, Vals &&...vs) const HB_AUTO_RETURN - (hb_deref_pointer (a) (hb_forward (vs...))) + (hb_deref_pointer (a) (hb_forward (vs)...)) public: @@ -92,7 +92,7 @@ struct ( impl (hb_forward (a), hb_prioritize, - hb_forward (vs...)) + hb_forward (vs)...) ) } HB_FUNCOBJ (hb_invoke); diff --git a/src/test-iter.cc b/src/test-iter.cc index 675bbe397..93a48526d 100644 --- a/src/test-iter.cc +++ b/src/test-iter.cc @@ -181,7 +181,7 @@ main (int argc, char **argv) ; /* The result should be something like 0->10, 1->11, ..., 9->19 */ assert (hb_map_get (result, 9) == 19); - + unsigned int temp3 = 0; + hb_iter(src) | hb_map([&] (int i) -> int { return ++temp3; }) @@ -197,5 +197,8 @@ main (int argc, char **argv) long vl; s >> vl; + if (0) + hb_invoke (main, 0, nullptr); + return 0; }