BDE 4.13.0 Release¶
Schedule¶
The BDE team announces that the BDE 4.13.0 production release was completed on Monday, September 2, 2024.
BDE 4.13.0 Release Highlights¶
bsl::optional
Now Supports Incomplete Types¶
This release updates the implementation of bsl::optional
so that it is no
longer an error to refer to the type bsl::optional<T>
when T
is an
incomplete class type. Note, however, that while T
is still incomplete,
bsl::optional<T>
may be used only in ways that do not require a complete
type. For example:
class T; // ``T`` is incomplete
bsl::optional<T> maybeGetT(); // previously ill formed, now OK
// ``maybeGetT`` cannot be called yet, because calling a function requires
// its return type to be complete.
class T { /* ... */ };
void otherFunc() {
bsl::optional<T> ot = maybeGetT(); // OK; ``T`` is now complete
}
This change brings bsl::optional
’s handling of incomplete class types in
line with that of std::optional
.
Fixed DRQSs:¶
Summary |
---|
Re-split bslstl::hastable test driver |
Allow bsl::optional<incomplete> |
Apply BSLS_OVERRIDE_KEYWORD to bde/bde |
Address UBSAN issues in bdlc_flathashtable |
bsl::is_trivially_default_constructible_v != std::is_trivially_default_constructible_v |
Please create a script to help with splitting large test drivers |
Please integrate bde_xt_cpp_splitter into bbs |
please address windows bdldfp_decimal.t.cpp CASE 7 |
Fix pmr support for c++20 on Darwin. |
reduce bsl nb warnings |
please address bslstl_bitset.t.cpp warning for clang-15 |
A bit convoluted ‘bdlb::NullableValue’ use causes Internal Compiler Error in Visual Studio 2022 in C++20 mode |
Address UBSAN issues in bdld_datum |
Address UBSAN issues in bdlmt_throttle |
Address UBSAN issues in bdlsb_overflowmemoutput |
Address UBSAN issues in bdlsb_overflowmemoutstreambuf |
Address UBSAN issues in bdlt_date |
Use of deprecated CryptGetRandom in bdlb::RandomDevice on Windows |
Apply BSLS_OVERRIDE_KEYWORD to bde/bde/goups/bbl |
Apply BSLS_OVERRIDE_KEYWORD to bde/bde/goups/bal except ball |
Apply BSLS_OVERRIDE_KEYWORD to bde/bde/goups/bal/ball |
Apply BSLS_OVERRIDE_KEYWORD to bde/bde/goups/bdl |
Apply BSLS_OVERRIDE_KEYWORD to bde/bde/goups/bsl/bslma |
Apply BSLS_OVERRIDE_KEYWORD to bde/bde/goups/bsl/bslmf |
Apply BSLS_OVERRIDE_KEYWORD to bde/bde/goups/bsl/bslmt |
Apply BSLS_OVERRIDE_KEYWORD to bde/bde/goups/bsl/bsls |
Apply BSLS_OVERRIDE_KEYWORD to bde/bde/goups/bsl/bslstl |
Apply BSLS_OVERRIDE_KEYWORD to bde/bde/goups/bsl/bslx |
No member named resetCopyMoveState in bsltf_argumenttype |
please replace bcec_skiplist.t.cpp with #define version |
bdlmt::MultiQueueThreadPool use-after-free/race bug in shutdown |
Please fix bslstl_hashtable test driver cpp03 errors |
TSAN race in bdlb_guidutil |
reduce or ticket bdl warnings |
correct bdlc_indexclerk compile warning |
please address clang-15 test compile errors in bslim_bslstandardheadertest and bsls_libraryfeatures |
correct bdetu_informixdatetime.t.cpp gcc-12 warning |
reduce bde repo gcc-12 warnings |
Fix ranges on MacOS |
Use automated splitting in bdlt_iso8601util test driver |
xt_cpp_splitter; Fix handling of empty _cpp03 files |