Skip to content

[unord.hash] Redundant wording LWG 3512 #4437

Description

@JohelEGP

[unord.hash]p5.4 ends with "shall not throw an exception unless hash<Key> is a program-defined specialization that depends on at least one program-defined type."

"that depends on at least one program-defined type" is redundant given [namespace.std]p2: "Unless explicitly prohibited, a program may add a template specialization for any standard library class template to namespace std provided that (a) the added declaration depends on at least one program-defined type ..."

Activity

  1. jwakely commented on Dec 28, 2020

    @jwakely
    Member

    I agree those words are redundant, but is that wording even true? If the hash function is hash<optional<T>> then it's not a program-defined specialization, but it can throw if hash<T> can throw.

    Rather than fixing the redundancy as an editorial issue, we need to fix the falsehood as an LWG issue.

  2. JohelEGP commented on Dec 28, 2020

    @JohelEGP
    ContributorAuthor

    You're right. Fortunately, the redundant part comes after the falsehood part.

  3. Dani-Hub commented on Jan 16, 2021

    @Dani-Hub
    Member

    A corresponding LWG issue exists now: LWG 3512

  4. changed the title [-][unord.hash] Redundant wording[/-] [+][unord.hash] Redundant wording LWG 3512[/+] on Jan 21, 2021
  5. added
    lwgIssue must be reviewed by LWG.
    not-editorialIssue is not deemed editorial; the editorial issue is kept open for tracking.
    on Jan 21, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    lwgIssue must be reviewed by LWG.not-editorialIssue is not deemed editorial; the editorial issue is kept open for tracking.

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions