summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorIlya Biryukov <ibiryukov@google.com>2018-02-06 16:32:36 +0000
committerIlya Biryukov <ibiryukov@google.com>2018-02-06 16:32:36 +0000
commitb9cf83b16f75ac4120c2f1a867ebe21315de13fa (patch)
treec123bfaef80e7adf1f57c9200acdedf665404cb8
parentd2718ba95e57dcca85250157b97cb3df77e2eabb (diff)
downloadbcm5719-llvm-b9cf83b16f75ac4120c2f1a867ebe21315de13fa.tar.gz
bcm5719-llvm-b9cf83b16f75ac4120c2f1a867ebe21315de13fa.zip
[clangd] Fixed compilation on Windows buildbot.
llvm-svn: 324361
-rw-r--r--clang-tools-extra/unittests/clangd/ThreadingTests.cpp8
1 files changed, 6 insertions, 2 deletions
diff --git a/clang-tools-extra/unittests/clangd/ThreadingTests.cpp b/clang-tools-extra/unittests/clangd/ThreadingTests.cpp
index ffa12887c82..84e6512fe43 100644
--- a/clang-tools-extra/unittests/clangd/ThreadingTests.cpp
+++ b/clang-tools-extra/unittests/clangd/ThreadingTests.cpp
@@ -17,7 +17,11 @@ class ThreadingTest : public ::testing::Test {};
TEST_F(ThreadingTest, TaskRunner) {
const int TasksCnt = 100;
- const int IncrementsPerTask = 1000;
+ // This should be const, but MSVC does not allow to use const vars in lambdas
+ // without capture. On the other hand, clang gives a warning that capture of
+ // const var is not required.
+ // Making it non-const makes both compilers happy.
+ int IncrementsPerTask = 1000;
std::mutex Mutex;
int Counter(0); /* GUARDED_BY(Mutex) */
@@ -25,7 +29,7 @@ TEST_F(ThreadingTest, TaskRunner) {
AsyncTaskRunner Tasks;
auto scheduleIncrements = [&]() {
for (int TaskI = 0; TaskI < TasksCnt; ++TaskI) {
- Tasks.runAsync([&Counter, &Mutex]() {
+ Tasks.runAsync([&Counter, &Mutex, IncrementsPerTask]() {
for (int Increment = 0; Increment < IncrementsPerTask; ++Increment) {
std::lock_guard<std::mutex> Lock(Mutex);
++Counter;
OpenPOWER on IntegriCloud