bde
bde copied to clipboard
Basic Development Environment - a set of foundational C++ libraries used at Bloomberg.
This patch supplies additional cleanups that were independently developed testing C++20 on an M1 mac. After rebasing onto the changes already landed in `master`, the main effect is to adopt...
**Bloomberg users should not use Issues - please enter a DRQS to group 101**
``` /home/tcanabrava/Projects/bde/groups/bal/balb/balb_controlmanager.cpp: In member function ‘void BloombergLP::balb::ControlManager::printUsage(std::ostream&, const std::string_view&) const’: /home/tcanabrava/Projects/bde/groups/bal/balb/balb_controlmanager.cpp:142:32: error: ‘endl’ is not a member of ‘bsl’; did you mean ‘end’? 142 | stream
Will file internal issue - this was done on my personal M1 laptop - Use `clock_gettime_nsec_np` over `mach_absolute_time` - Extend support for ARM CPUs to include ARM v8 (which includes...
https://github.com/bloomberg/bde/blob/master/groups/bsl/bslstl/bslstl_error.t.cpp#L1359 There's no guarantee that the std::hash of an std::error_code differ if the error code categories are different. Indeed, on libc++, this is the case: ```cpp template struct _LIBCPP_TEMPLATE_VIS hash...
https://github.com/bloomberg/bde/blob/master/groups/bsl/bslstl/bslstl_stringview.t.cpp#L5327 (and line 5343) I'm compiling with Circle targeting libc++. string_view.max_size() returns 18446744073709551615 on that platform, so the MAX_MAX_SIZE is (18446744073709551614) is smaller, violating the assert.
**Describe your changes** The existing compiler flags did not allow builds on Apple Silicon platforms (e.g., the M1 mini). This PR rectifies this situation, adding `__arm64` detection and ensuring it...
gcc9 has changed the way it computes __LINE__ number when a macro invocation spans multiple lines, specifically in the case of: BSLMT_TESTUIL_LOOPX_ASSERT(I, J, K, L, M, N, // gcc 9+...
DO NOT MERGE, just for looking-at.
I'm getting a build error at bslstl_bitset.t.cpp:1140 ASSERTV(LINE, (X.to_string() == s)); It took a long time to debug, but I have some info for you: That code tries to get...