Page 1 of 1

Do enumerators count as "numeric values"?

Posted: Thu Mar 25, 2010 1:04 pm
by gs
The commentary in the MISRA guidelines leaves the answer to this question unclear in my opinion due to the wording
Numeric values/data are numbers such as 0, 5, 23, \x10, -3.

Re: Do enumerators count as "numeric values"?

Posted: Thu May 13, 2010 10:04 am
by misra-c
This line appears in Rule 6.2 which concerns the values that can be stored in signed and unsigned char types.

Enumerators count as numeric values provided that the value can be represented in the signed or unsigned char type.

Code: Select all

enum colour { red = 0, amber = 127, green = 255};
signed char s1 = red;          /* Compliant     */
signed char s2 = amber;        /* Compliant     */
signed char s3 = green;        /* Non-compliant */
A future version of MISRA C may place further restrictions on the use of enumerators.