// This is ugly, but better perf for DeterministicAtomic translates
// directly to more states explored and tested
-#define FOLLY_TEST_DSCHED_VLOG(msg...) \
- do { \
- if (false) { \
- VLOG(2) << std::hex << std::this_thread::get_id() << ": " << msg; \
- } \
+#define FOLLY_TEST_DSCHED_VLOG(...) \
+ do { \
+ if (false) { \
+ VLOG(2) << std::hex << std::this_thread::get_id() << ": " \
+ << __VA_ARGS__; \
+ } \
} while (false)
/**
}
}
-#define BENCH_BASE(args...) BENCHMARK_NAMED_PARAM(args)
-#define BENCH_REL(args...) BENCHMARK_RELATIVE_NAMED_PARAM(args)
+#define BENCH_BASE(...) BENCHMARK_NAMED_PARAM(__VA_ARGS__)
+#define BENCH_REL(...) BENCHMARK_RELATIVE_NAMED_PARAM(__VA_ARGS__)
// 100% reads. Best-case scenario for deferred locks. Lock is colocated
// with read data, so inline lock takes cache miss every time but deferred