Use the top-level ::benchmark namespace to resolve `make_unique` Fixes #1959
diff --git a/include/benchmark/benchmark.h b/include/benchmark/benchmark.h index c9a758b..624ab29 100644 --- a/include/benchmark/benchmark.h +++ b/include/benchmark/benchmark.h
@@ -1391,7 +1391,8 @@ inline internal::Benchmark* RegisterBenchmark(const std::string& name, internal::Function* fn) { return internal::RegisterBenchmarkInternal( - benchmark::internal::make_unique<internal::FunctionBenchmark>(name, fn)); + ::benchmark::internal::make_unique<internal::FunctionBenchmark>(name, + fn)); } template <class Lambda> @@ -1399,8 +1400,8 @@ using BenchType = internal::LambdaBenchmark<typename std::decay<Lambda>::type>; return internal::RegisterBenchmarkInternal( - benchmark::internal::make_unique<BenchType>(name, - std::forward<Lambda>(fn))); + ::benchmark::internal::make_unique<BenchType>(name, + std::forward<Lambda>(fn))); } template <class Lambda, class... Args> @@ -1464,7 +1465,7 @@ #define BENCHMARK(...) \ BENCHMARK_PRIVATE_DECLARE(_benchmark_) = \ (::benchmark::internal::RegisterBenchmarkInternal( \ - benchmark::internal::make_unique< \ + ::benchmark::internal::make_unique< \ ::benchmark::internal::FunctionBenchmark>(#__VA_ARGS__, \ __VA_ARGS__))) @@ -1490,7 +1491,7 @@ #define BENCHMARK_CAPTURE(func, test_case_name, ...) \ BENCHMARK_PRIVATE_DECLARE(_benchmark_) = \ (::benchmark::internal::RegisterBenchmarkInternal( \ - benchmark::internal::make_unique< \ + ::benchmark::internal::make_unique< \ ::benchmark::internal::FunctionBenchmark>( \ #func "/" #test_case_name, \ [](::benchmark::State& st) { func(st, __VA_ARGS__); }))) @@ -1506,20 +1507,20 @@ #define BENCHMARK_TEMPLATE1(n, a) \ BENCHMARK_PRIVATE_DECLARE(n) = \ (::benchmark::internal::RegisterBenchmarkInternal( \ - benchmark::internal::make_unique< \ + ::benchmark::internal::make_unique< \ ::benchmark::internal::FunctionBenchmark>(#n "<" #a ">", n<a>))) #define BENCHMARK_TEMPLATE2(n, a, b) \ BENCHMARK_PRIVATE_DECLARE(n) = \ (::benchmark::internal::RegisterBenchmarkInternal( \ - benchmark::internal::make_unique< \ + ::benchmark::internal::make_unique< \ ::benchmark::internal::FunctionBenchmark>(#n "<" #a "," #b ">", \ n<a, b>))) #define BENCHMARK_TEMPLATE(n, ...) \ BENCHMARK_PRIVATE_DECLARE(n) = \ (::benchmark::internal::RegisterBenchmarkInternal( \ - benchmark::internal::make_unique< \ + ::benchmark::internal::make_unique< \ ::benchmark::internal::FunctionBenchmark>( \ #n "<" #__VA_ARGS__ ">", n<__VA_ARGS__>))) @@ -1541,7 +1542,7 @@ #define BENCHMARK_TEMPLATE2_CAPTURE(func, a, b, test_case_name, ...) \ BENCHMARK_PRIVATE_DECLARE(func) = \ (::benchmark::internal::RegisterBenchmarkInternal( \ - benchmark::internal::make_unique< \ + ::benchmark::internal::make_unique< \ ::benchmark::internal::FunctionBenchmark>( \ #func "<" #a "," #b ">" \ "/" #test_case_name, \ @@ -1613,7 +1614,7 @@ #define BENCHMARK_PRIVATE_REGISTER_F(TestName) \ BENCHMARK_PRIVATE_DECLARE(TestName) = \ (::benchmark::internal::RegisterBenchmarkInternal( \ - benchmark::internal::make_unique<TestName>())) + ::benchmark::internal::make_unique<TestName>())) // This macro will define and register a benchmark within a fixture class. #define BENCHMARK_F(BaseClass, Method) \