On 2009/01/25 14:06, Michiel van Baak wrote:
> > > - chan_h323 wont compile. Something to do with channel.h included in a
> > > cxx file. I'm not able to fix it. I tried but failed. The code in
> > > question looks valid, so it probably has to do with gcc versions.
> > > The digium developers had a look at well, but they are all using gcc4
> > > and there it works great.
...
> > I'll see if I can work out what's going on...
>
> Thanks. the problem (I think) is in include/asterisk/channel.h at the
> end of the file.
> struct ast_group_info {
it took a while, but I got there in the end: gcc 3's g++ doesn't allow
a struct member to have the same name as a header.
include/asterisk/channel.h:
1741 struct ast_group_info {
1742 struct ast_channel *chan;
1743 char *category;
1744 char *group;
1745 AST_LIST_ENTRY(ast_group_info) list;
1746 };
channels/h323/ast_h323.cxx:
36 #include <list>
..
74 #ifdef __cplusplus
75 extern "C" {
76 #endif
77 #include "asterisk/compat.h"
78 #include "asterisk/logger.h"
79 #include "asterisk/channel.h"
80 #include "asterisk/astobj.h"
81 #ifdef __cplusplus
82 }
83 #endif
http://bugs.digium.com/view.php?id=14790