﻿# V2504\. MISRA\. Size of an array is not specified\.

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

Explicitly specifying the array size makes code clearer and helps to prevent mistakes leading to an array overrun due to its exact size being unknown to the programmer\.

The analyzer issues this warning when it detects a declaration of an array with the 'extern' specifier, provided that the array size is not specified explicitly\. For example:

```cpp
extern int arr[];
```

To eliminate the warning, specify the array size explicitly\.

```cpp
extern int arr[12];
```

If the array size can be inferred from the initializer, the warning is not issued\.

```cpp
int arr1[] = {1, 2, 3};
```