diff options
author | Zachary Turner <zturner@google.com> | 2018-06-25 04:35:35 +0000 |
---|---|---|
committer | Zachary Turner <zturner@google.com> | 2018-06-25 04:35:35 +0000 |
commit | ad45f93e89ec876952740b6cb50630fa4bad1b2c (patch) | |
tree | b586caca196af93385aca60b7aadfdc1afc7c2e5 | |
parent | 72b3f5fb0f7042e0e040b3d05efc5a297e833851 (diff) | |
download | bcm5719-llvm-ad45f93e89ec876952740b6cb50630fa4bad1b2c.tar.gz bcm5719-llvm-ad45f93e89ec876952740b6cb50630fa4bad1b2c.zip |
Try to fix build error on non MSVC compilers.
llvm-svn: 335442
-rw-r--r-- | llvm/include/llvm/Support/TaskQueue.h | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/llvm/include/llvm/Support/TaskQueue.h b/llvm/include/llvm/Support/TaskQueue.h index f5abc3d612e..49981adb763 100644 --- a/llvm/include/llvm/Support/TaskQueue.h +++ b/llvm/include/llvm/Support/TaskQueue.h @@ -44,17 +44,19 @@ class TaskQueue { : C(std::move(C)), P(std::make_shared<std::promise<ResultTy>>()), Parent(&Parent) {} - template <typename T> void invokeCallbackAndSetPromise() { + template<typename T> + void invokeCallbackAndSetPromise(T*) { P->set_value(C()); } - template <> void invokeCallbackAndSetPromise<void>() { + void invokeCallbackAndSetPromise(void*) { C(); P->set_value(); } void operator()() noexcept { - invokeCallbackAndSetPromise<ResultTy>(); + ResultTy *Dummy = nullptr; + invokeCallbackAndSetPromise(Dummy); Parent->completeTask(); } |