This page is a snapshot from the LWG issues list, see the Library Active Issues List for more information and the meaning of C++23 status.
3771. [fund.ts.v3] remove binders typedefs fromfunction
Section: 7.2.1 [fund.ts.v3::func.wrap.func.overview] Status: C++23 Submitter: Alisdair Meredith Opened: 2022-09-12 Last modified: 2023-11-22
Priority: Not Prioritized
View all issues with C++23 status.
Discussion:
Addresses: fund.ts.v3
The LFTSv3 bases its specification for experimental::function
on std::function
in the C++20 standard. However, the wording was largely copied over from LFTSv2 which based its wording on the C++14 standard.
For C++17, we removed the conditionally defined typedefs for the legacy binders API, but this removal was not reflected in the TS. We are now left with a specification referring to unknown types, T1
and T2
.
These typedefs should be excised to match the referenced standard.
[2022-09-23; Reflector poll]
Set status to Tentatively Ready after ten votes in favour during reflector poll.
[2022-11-12 Approved at November 2022 meeting in Kona. Status changed: Voting → WP.]
Proposed resolution:
This wording is relative to N4920.
Modify the synopsis in 7.2.1 [fund.ts.v3::func.wrap.func.overview] as indicated:
namespace std { namespace experimental::inline fundamentals_v3 { template<class> class function; // undefined template<class R, class... ArgTypes> class function<R(ArgTypes...)> { public: using result_type = R; using argument_type = T1; using first_argument_type T1; using second_argument_type = T2; using allocator_type = erased_type; // ... } }
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4