I have this struct type definition:
typedef struct {
char *key;
long canTag;
long canSet;
long allowMultiple;
confType *next;
} confType;
When compiling, gcc throws this error:
conf.c:6: error: expected specifier-qualifier-list before ‘confType’
What does this mean? It doesn't seem related to other questions with this error.
You used confType before you declared it. (for next). Instead, try this:
typedef struct confType {
char *key;
long canTag;
long canSet;
long allowMultiple;
struct confType *next;
} confType;
JoshD's answer now is correct, I usually go for an equivalent variant:
typedef struct confType confType;
struct confType {
char *key;
long canTag;
long canSet;
long allowMultiple;
confType *next;
};
When you only want to expose opaque pointers, you put the typedef
in your header file (interface) and the struct
declaration in your source file (implementation).
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With