diff --git a/include/nop/rpc/interface.h b/include/nop/rpc/interface.h index 45b2049..e383ca5 100644 --- a/include/nop/rpc/interface.h +++ b/include/nop/rpc/interface.h @@ -244,8 +244,8 @@ struct InterfaceMethod { template static void Invoke(Sender* sender, Status* return_value, Args... args) { - sender->template SendMethod(InterfaceMethod::Selector, return_value, - std::forward_as_tuple(args...)); + sender->template SendMethod<>(InterfaceMethod::Selector, return_value, + std::forward_as_tuple(args...)); } // Dispatches the given handler op, getting the arguments from the given diff --git a/include/nop/types/variant.h b/include/nop/types/variant.h index cffbde1..98278f8 100644 --- a/include/nop/types/variant.h +++ b/include/nop/types/variant.h @@ -238,7 +238,7 @@ class Variant { // resulting type. template void Construct(Args&&... args) { - index_ = value_.template Construct(std::forward(args)...); + index_ = value_.template Construct<>(std::forward(args)...); } void Construct(EmptyVariant) {} @@ -255,14 +255,15 @@ class Variant { // multiple element types. template void Assign(TypeTag, U&& value) { - if (!value_.template Assign(TypeTag{}, index_, std::forward(value))) { + if (!value_.template Assign<>(TypeTag{}, index_, + std::forward(value))) { Destruct(); Construct(TypeTag{}, std::forward(value)); } } template void Assign(T&& value) { - if (!value_.template Assign(index_, std::forward(value))) { + if (!value_.template Assign<>(index_, std::forward(value))) { Destruct(); Construct(std::forward(value)); }