﻿# V2509\. MISRA\. The function with the 'abort/exit/getenv/system' name should not be used\.

This diagnostic rule is based on the software development guidelines developed by [MISRA](https://www.misra.org.uk/) \(Motor Industry Software Reliability Association\)\.

The analyzer issues the warning when it detects the following functions: abort, exit, getenv, and system\. If the project is checked for compliance with MISRA C\+\+ 2023, the restriction applies only to the system function\.

The behavior of these functions is implementation\-dependent\. Besides, using such functions as `system` may cause vulnerabilities\.

Here is an example of code triggering this warning:

```cpp
void Foo(FILE *pFile)
{
  if (pFile == NULL)
  {
    abort();
  }
  ....
}
```

The warning is also issued in programs whenever a macro declaration with one of these names is detected\.