This diagnostic rule is based on the software development guidelines developed by MISRA (Motor Industry Software Reliability Association).
This diagnostic rule is only relevant to C++. 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:
|