You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This commit fixes a bug in the use of SFINAE in the container base type.
In particuler, this issue has three layers:
1. The existing code uses the `typename = std::enable_if` anti-pattern
which is discouraged in the C++ standard.
2. The code used `std::enable_if` without getting `::type` from it,
meaning that a specialization failure cannot ever occur, rendering
the SFINAE useless.
3. The check used about type equality is incorrect, it should rather
check constructability.
This commit fixes the issues by converting the code to a C++20 requires
clause and by modifying the conditions.
0 commit comments