Details
-
Improvement
-
Resolution: Fixed
-
Major - P3
-
None
-
None
-
None
-
Fully Compatible
-
Service Arch 2018-10-08
Description
Use the enable-if for non-explicit constructors trick that `std::optional` uses to make `std::optional< std::unique_ptr< Base > >` accept `std::unique_ptr< Derived >` implicitly.
This will permit things like this, among others:
```
StatusWith< boost::optional< std::unique_ptr< Base > > >
function()
```