isocpp / isocpp/CppCoreGuidelines

Add better enforcement for 'C.167: Use an operator for an operation with its conventional meaning'

Open
#1,035 11 comments 0 reactions 1 assignee View on GitHub

@JonasToth is already working on this.

Since Feb 12, 2018.

Dominant language
CSS
Stars
45.3k
Forks
5.6k
PR merge metrics
No merged PRs in 30d

Description

I would like to propose a better enforcement for the mentionend rule.
Currently it is: Tricky. Requires semantic insight., which is true.

One somewhat heuristic thing tools can do is to ensure that the return type of an overloaded operator should match its builtin equivalent.

This is similar to High Integrity C++
13.2.2 Ensure that the return type of an overloaded binary operator matches the built-in counterparts

Proposed new (partial) enforcement:
Ensure, that the return type of overloaded operators matches it's built-in equivalent.

If this is accepted, i would be happy to create a pull request!

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.