git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@294392
91177308-0d34-0410-b5e6-
96231b3b80d8
}
};
+// Handler traits for free functions.
+template <typename RetT, typename... ArgTs>
+class HandlerTraits<RetT(*)(ArgTs...)>
+ : public HandlerTraits<RetT(ArgTs...)> {};
+
// Handler traits for class methods (especially call operators for lambdas).
template <typename Class, typename RetT, typename... ArgTs>
class HandlerTraits<RetT (Class::*)(ArgTs...)>
};
+void freeVoidBool(bool B) {
+};
+
+TEST(DummyRPC, TestFreeFunctionHandler) {
+ Queue Q1, Q2;
+ DummyRPCEndpoint Server(Q2, Q1);
+ Server.addHandler<DummyRPCAPI::VoidBool>(freeVoidBool);
+};
+
TEST(DummyRPC, TestAsyncVoidBool) {
Queue Q1, Q2;
DummyRPCEndpoint Client(Q1, Q2);