Error: conflicting types for....

gplkrsna's Avatar, Join Date: Apr 2009
Newbie Member
Hi,

I'm looking solution for the following problem.

Problem:
I have two libraries with two different queue implementations. but with same structure name as "queuetype".

Now if I include both of the header files in my code, compilation will go for toss saying "error: conflicting types for 'queuetype' "

I need to include both the files.

How can I resolve this issue??

Thanks in advance.
0
thillai_selvan's Avatar, Join Date: Feb 2010
Go4Expert Member
Actually in the both header files you are having the same structure. So when you are trying to include the second header file it will be like another definition or re-declaration for that structure. Thats why this kind of situation is occuring
0
gplkrsna's Avatar, Join Date: Apr 2009
Newbie Member
Yeah, is there a solution for this?
0
thillai_selvan's Avatar, Join Date: Feb 2010
Go4Expert Member
You can use the macros for this.
IFDEF structure_name
check this condition

If the structure is already defined then UNDEF of that structure.
Hopes this will help
0
xpi0t0s's Avatar, Join Date: Aug 2004
Mentor
Very often you'll see in header files something like
Code:
// header file foo.h
#ifndef FOO_H
#define FOO_H

// header file contents

#endif // FOO_H
If a.h and b.h both include foo.h, and your program has to include a.h and b.h, then this guard will prevent duplicate definition errors caused by the double inclusion of foo.h.