Skip to content

Commit 697da92

Browse files
committed
test: use default reference capture in concurrency lambdas
MSVC in C++11 mode rejected the lambdas (C3493) because the constexpr loop-bound locals were used without being captured; C++17+ does not require capturing them, so only the C++11 jobs failed. Capture by reference so the tests build under every standard in the matrix.
1 parent 306f486 commit 697da92

1 file changed

Lines changed: 3 additions & 3 deletions

File tree

tests/concurrency_test.cc

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -60,7 +60,7 @@ TEST_F(ConcurrencyTest, ConcurrentAutoIncrementInsertsAllSucceedWithUniqueIds) {
6060
std::vector<std::thread> workers;
6161
workers.reserve(kThreads);
6262
for (int t = 0; t < kThreads; ++t) {
63-
workers.emplace_back([&db, &failures] {
63+
workers.emplace_back([&] {
6464
for (int i = 0; i < kInsertsPerThread; ++i) {
6565
try {
6666
Person p{L"john", L"doe", 30};
@@ -104,7 +104,7 @@ TEST_F(ConcurrencyTest, ConcurrentReadsAndWritesDoNotThrow) {
104104
workers.reserve(kWriters + kReaders);
105105

106106
for (int t = 0; t < kWriters; ++t) {
107-
workers.emplace_back([&db, &failures] {
107+
workers.emplace_back([&] {
108108
for (int i = 0; i < kInsertsPerWriter; ++i) {
109109
try {
110110
Person p{L"jane", L"roe", 41};
@@ -117,7 +117,7 @@ TEST_F(ConcurrencyTest, ConcurrentReadsAndWritesDoNotThrow) {
117117
}
118118

119119
for (int t = 0; t < kReaders; ++t) {
120-
workers.emplace_back([&db, &failures] {
120+
workers.emplace_back([&] {
121121
for (int i = 0; i < kReadsPerReader; ++i) {
122122
try {
123123
// Reading concurrently with writers must not crash or throw.

0 commit comments

Comments
 (0)