Skip to content

CA173 17.11.02.2 [cmp.weakeq] Remove "weak_equality" #171

@wg21bot

Description

@wg21bot

With the separation of <=> and ==, weak_equality has lost its primary use (of being a potential return type of <=>). Currently weak_equality serves no useful purpose in the standard (i.e., nothing in std acts on it), and just causes confusion (what’s the difference between weak and strong, when should I use which?)
The difference between the two is ill-defined (involving substitutability and “salient” properties, which are also vaguely defined). The best definition of equality for a type is the type’s own == operator. We should not try to sub-divide the concept of equality.

Proposed change:
Remove weak_equality and all references to it. Rename strong_equality to just equality.
(New wording probably requires a paper, forthcoming).

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions