-
Notifications
You must be signed in to change notification settings - Fork 1.6k
Closed
Labels
enhancementSomething can be improvedSomething can be improvedresolvedSuccessfully resolved without a commitSuccessfully resolved without a commit
Description
Clang16 has implemented WG21-P0634R3, so we can omit typename in many places since C++20 mode (see WG21-P2150 for possible simplification in library). See also #3694 which drops optional typename in <mdspan>.
For pre-C++20 components, I think we can use the following conditional compilation pattern.
#if _HAS_CXX20
#define _OPT_TYPENAME
#else // ^^^ _HAS_CXX20 / !_HAS_CXX20 vvv
#define _OPT_TYPENAME typename
#endif // ^^^ !_HAS_CXX20 ^^^I'm not sure whether this would
- make the code easier to read, and/or
- improve compiler throughput,
or the way around.
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
enhancementSomething can be improvedSomething can be improvedresolvedSuccessfully resolved without a commitSuccessfully resolved without a commit