BDE 3.72.0: Production Release¶
Schedule¶
The BDE team is pleased to announce that the BDE 3.72.0 production release was completed on Monday, Jan 18, 2021.
BDE 3.72.0 Highlights¶
Improvements to bsl::function
¶
BDE release 3.72.0 provides a couple of changes to bsl::function
, which improve its standards compliance and usability.
Use RValue References in bsl::function
Signatures¶
In C++11, bsl::function now supports rvalue-reference qualified arguments.
// Now possible in C++11 and later
bsl::function<void(bsl::string&&)> myFunction = [](bsl::string&& message) {
bsl::cout << "got message: " << message << "\n";
MyMessagingUtility::forwardToRecipient(bsl::move(message));
};
bsl::string myMessage = "Hello, Move Semantics!";
myFunction(bsl::move(myMessage));
Please see DRQS 142519771 and DRQS 110419032 for more information.
Create Empty Functions Using Zero Literals¶
Users may now construct empty bsl::function
objects using a 0 literal in
C++03. This has the same effect as constructing a bsl::function object with
a nullptr literal in C++11 and later.
// The canonical way to create an empty function, which works
// in C++03 and later
bsl::function<void()> myEmptyFunction0;
// In C++11 and later, the following is also possible
bsl::function<void()> myEmptyFunction1(nullptr);
// Now, the following is newly possible in C++03
bsl::function myEmptyFunction2(0);
Please see DRQS 153572494 for more information.
Documentation Improvements and Refactoring¶
bsl::function
’s documentation has been improved, and it has been refactored
into smaller components, laying the ground work future improvements and
bugfixes.
Fixed requests: 3.72.0¶
Summary |
---|
|
|
|
|
Polish |
bad includes in documentation of |
Refactor |
Factor |
Factor |
Factor |
Factor |
Factor |
|
|
Incorrect cache line size for x86-64 in |
Assertion bug in |
Fix bsls_platform.t.cpp compilation on sun gcc |
Make |
Release BDE 3.72.0 |