From 2340206b34a3a80eeb9ad0e4052b3b00ffb4e6ac Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Micha=C5=82=20Janiszewski?= Date: Thu, 6 Feb 2020 08:50:10 +0100 Subject: [PATCH] Place constexpr functions in anonymous namespace (#10651) --- src/openrct2/common.h | 37 ++++++++++++++++++++----------------- 1 file changed, 20 insertions(+), 17 deletions(-) diff --git a/src/openrct2/common.h b/src/openrct2/common.h index 71e0267300..1933e861cd 100644 --- a/src/openrct2/common.h +++ b/src/openrct2/common.h @@ -51,26 +51,29 @@ const constexpr auto ror32 = ror; const constexpr auto rol64 = rol; const constexpr auto ror64 = ror; -constexpr bool is_power_of_2(int v) +namespace { - return v && ((v & (v - 1)) == 0); -} + [[maybe_unused]] constexpr bool is_power_of_2(int v) + { + return v && ((v & (v - 1)) == 0); + } -// Rounds an integer down to the given power of 2. y must be a power of 2. -constexpr int floor2(const int x, const int y) -{ - if (!is_power_of_2(y)) - throw std::logic_error("floor2 should only operate on power of 2"); - return x & ~(y - 1); -} + // Rounds an integer down to the given power of 2. y must be a power of 2. + [[maybe_unused]] constexpr int floor2(const int x, const int y) + { + if (!is_power_of_2(y)) + throw std::logic_error("floor2 should only operate on power of 2"); + return x & ~(y - 1); + } -// Rounds an integer up to the given power of 2. y must be a power of 2. -constexpr int ceil2(const int x, const int y) -{ - if (!is_power_of_2(y)) - throw std::logic_error("ceil2 should only operate on power of 2"); - return (x + y - 1) & ~(y - 1); -} + // Rounds an integer up to the given power of 2. y must be a power of 2. + [[maybe_unused]] constexpr int ceil2(const int x, const int y) + { + if (!is_power_of_2(y)) + throw std::logic_error("ceil2 should only operate on power of 2"); + return (x + y - 1) & ~(y - 1); + } +} // namespace // Gets the name of a symbol as a C string #define nameof(symbol) #symbol