| ??? 03/02/11 15:50 Read: times  | 
#181397 - Why is the code below cited for violation of MISRA 13.6 | 
Why is the last code line (array element initialization) in the code below being cited for 13.6 violation by Crystal Revs MISRA checker: 
 "Numeric variables being used within a for loop for iteration counting shall not be modified in the body of the loop" 
/*Test code for Crystal revs MISRA rule 13.6 */
typedef unsigned char uint8_t
void InitArray(void);
#define LCD_NUM_OF_COLS 2u
#define LCD_NUM_OF_ROWS	10u
uint8_t Test_Array[LCD_NUM_OF_COLS][LCD_NUM_OF_ROWS];
void InitArray(void)
	{
	uint8_t row_index = 0u;
	uint8_t col_index = 0u;	
	for (col_index = 0u; col_index < LCD_NUM_OF_COLS; col_index++)
		{
		for (row_index=0u; row_index < LCD_NUM_OF_ROWS; row_index++)	
			{
			/*	make each element of the array the char NULL	*/
			Test_Array[col_index][row_index] = 0u;	
			}	
		}
	}
 
 | 
| Topic | Author | Date | 
| Why is the code below cited for violation of MISRA 13.6 | 01/01/70 00:00 | |
| Double initialisation? | 01/01/70 00:00 | |
| Looks like bug | 01/01/70 00:00 | |
| Sorry, forgot to mention | 01/01/70 00:00 | |
| Now posted on MISRA forum: | 01/01/70 00:00 | |
            Thank you        | 01/01/70 00:00 | 



