From 0a92bc147f91f3ecacdf66d995f01f9577107a86 Mon Sep 17 00:00:00 2001 From: Stanislaw Halik Date: Thu, 15 Feb 2018 09:06:13 +0100 Subject: clean up "static" and "constexpr" types - use `static constexpr inline' to avoid requiring explicit declarations in object code - use `const Foo* const' to maybe put into readonly binary segment (at least for ELF DSOs) - `constexpr' in function scope has storage, avoid `static' - don't use `constexpr' where there's no advantage, like arrays We'd like to avoid overhead of atomic initialization for each function call. No idea how `static constexpr' requiring storage in the standard plays with atomic initialization requirement. Hearsay points that `constexpr' without `static' in block scope behaves more to our liking. It's all hazy though. I'm not 100% sure if `static inline constexpr' has any storage. Hopefully none, like a #define, and stuff bigger than registers gets coalesced within the same module, with small stuff being immediates. --- migration/20160906_00-mappings.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'migration/20160906_00-mappings.cpp') diff --git a/migration/20160906_00-mappings.cpp b/migration/20160906_00-mappings.cpp index 0712afca..567fbdcb 100644 --- a/migration/20160906_00-mappings.cpp +++ b/migration/20160906_00-mappings.cpp @@ -20,7 +20,7 @@ using namespace migrations; -static const char* old_names[] = +static const char* const old_names[] = { "tx", "tx_alt", "ty", "ty_alt", @@ -30,7 +30,7 @@ static const char* old_names[] = "rz", "rz_alt", }; -static const char* new_names[] = { +static const char* const new_names[] = { "spline-X", "alt-spline-X", "spline-Y", "alt-spline-Y", "spline-Z", "alt-spline-Z", -- cgit v1.2.3