diff --git a/CHANGELOG.md b/CHANGELOG.md index 596c539d0..b67b80e07 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -69,6 +69,7 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0. - Implemented fully correct version of GELU instead of using bad approximatin via Swish. - Handle copying from fp32 or fp16 embeddings in embedder mode correctly. - Correct defaults for factored embeddings such that shared library use works (move out of config.h/cpp). +- Fixed builds where array lengths must be constexpr. ### Changed - Globally set mkl_set_num_threads(1) diff --git a/src/3rd_party/ExceptionWithCallStack.cpp b/src/3rd_party/ExceptionWithCallStack.cpp index 59956d263..176b5490b 100644 --- a/src/3rd_party/ExceptionWithCallStack.cpp +++ b/src/3rd_party/ExceptionWithCallStack.cpp @@ -201,7 +201,7 @@ static void CollectCallStack(size_t skipLevels, bool makeFunctionNamesStandOut, #else // Linux - unsigned int MAX_NUM_FRAMES = 1024; + constexpr unsigned int MAX_NUM_FRAMES = 1024; void* backtraceAddresses[MAX_NUM_FRAMES]; unsigned int numFrames = backtrace(backtraceAddresses, MAX_NUM_FRAMES); char** symbolList = backtrace_symbols(backtraceAddresses, numFrames); @@ -234,7 +234,7 @@ static void CollectCallStack(size_t skipLevels, bool makeFunctionNamesStandOut, // Mangled name is now in [beginName, beginOffset) and caller offset in [beginOffset, beginAddress). int status = 0; - unsigned int MAX_FUNCNAME_SIZE = 4096; + constexpr unsigned int MAX_FUNCNAME_SIZE = 4096; size_t funcNameSize = MAX_FUNCNAME_SIZE; char funcName[MAX_FUNCNAME_SIZE]; // working buffer const char* ret = abi::__cxa_demangle(beginName, funcName, &funcNameSize, &status);