Skip to main content

IAR Embedded Workbench for RISC-V 3.40

MISRAC++2008-5-2-11_a (C++ only)

In this section:
Synopsis

(Required) The comma operator, && operator and the || operator shall not be overloaded.

Enabled by default

Yes

Severity/Certainty

Low/Low

lowlow.png
Full description

Overloaded && and || operators were found. This check is identical to LOGIC-overload, MISRAC++2023-16.5.1.

Coding standards
MISRA C++ 2023 16.5.1

(Required) The logical AND and logical OR operators shall not be overloaded

Code examples

The following code example fails the check and will give a warning:

class C{
  bool x;
  bool operator||(bool other);
};

bool C::operator||(bool other){
  return x || other;
}

The following code example passes the check and will not give a warning about this issue:

class C{
  int x;
  int operator+(int other);
};

int C::operator+(int other){
  return x + other;
}