This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
Hello,
I 'm trying to migrate my code from ccs5.5 to ccs6.1 and when I compile, I get this error "#148 declaration is incompatible with "volatile int EepAccessSequence" (declared at line 15 of "C:/Users/gselvaraj/workspace_v6_1/include/Eeprom.h") Eeprom.c /voltzperhz line 22 C/C++ Pr"
The error points a line in .c file which is declared in a .h file, following are the code snippet of the .c and .h file.
.C file
volatile enum {IDLE, BUSY} EepAccessSequence; // error line
EEPROM_DATA_T EeepromPacket;
//typedef enum {RANDOM, IMMEDIATE, SEARCH} strategy;
//typedef enum {RANDOM, IMMEDIATE, SEARCH} strategy_t;
//strategy_t my_strategy = IMMEDIATE;
void VerifyCommSetting(void);
void EepromTask(void)
{
unsigned char ucData;
Uint16 nData;
Uint16 nReturnStatus;
int n;
=============================================================================
.H file
#include "DSP2833x_Device.h"
typedef struct{
Uint16 ParamNo; //0xFD00
Uint16 ReadWrite; //read=0x01, write=0x02, complete | 0x8000
Uint16 Address;
Uint16 Bytes;
Uint16 Data;
}EEPROM_DATA_T;
extern volatile EepAccessSequence; // line 15 error reference
void EepromTask(void);
===========================================================================
The same code works fine with ccs5.5 and it was developed using ccs3.3.
Can you please help me understand whats wrong with my declaration and how to fix it?
Thank you.
More info:
error line in .c file :
volatile enum {IDLE, BUSY} EepAccessSequence;
error reference in .h file :
extern volatile EepAccessSequence;
The code is declaring integer "EepAccessSequence" as enum because my asumption is enum is by default integer type
No errors in using the same code in ccs 3.3 and ccs5.5.