V2576. MISRA. The identifier 'main' should not be used for a function other than the global function 'main'.

This diagnostic rule is based on the software development guidelines developed by MISRA (Motor Industry Software Reliability Association).

The 'main' function should only be present in the global namespace. This way a developer will be sure - if the 'main' function appears, it is always the entry point to the program.

The analyzer issues a warning for the following code example:

namespace N1
{
  int main();
}

Another code example that triggers the analyzer:

namespace
{
  int main();
}

If we rewrite the code by the rule, we will get the following:

namespace N1
{
  int start();
}

This diagnostic is classified as:

  • MISRA-CPP-7.3.2

Bugs Found

Checked Projects
427
Collected Errors
14 526
This website uses cookies and other technology to provide you a more personalized experience. By continuing the view of our web-pages you accept the terms of using these files. If you don't want your personal data to be processed, please, leave this site. Learn More →
Accept