summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorZachary Turner <zturner@google.com>2018-06-25 04:35:35 +0000
committerZachary Turner <zturner@google.com>2018-06-25 04:35:35 +0000
commitad45f93e89ec876952740b6cb50630fa4bad1b2c (patch)
treeb586caca196af93385aca60b7aadfdc1afc7c2e5
parent72b3f5fb0f7042e0e040b3d05efc5a297e833851 (diff)
downloadbcm5719-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.h8
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();
}
OpenPOWER on IntegriCloud