[PATCH 2/8] Fix warning about incompatible pointer types

Jānis Rukšāns <[email protected]>
Newsgroups gmane.linux.isdn.i4l.user
Message-ID <[email protected]>
If ast_channel struct is not declared before ast_register_application2,
gcc thinks that the implicit declaration in module.h is different from
the one in channel.h, and issues a warning about incompatible pointer
types. A forward declaration before including module.h fixes this.

Due to some brain-deadness in Ast, including channel.h before module.h
causes the compilation fail altogether.
---
 chan_lcr.c |    7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/chan_lcr.c b/chan_lcr.c
index 2903243..a81e48d 100644
--- a/chan_lcr.c
+++ b/chan_lcr.c
@@ -136,6 +136,13 @@ it is called from ast_channel process which has already locked ast_channel.
 #ifdef LCR_FOR_ASTERISK
 #include <asterisk/buildopts.h>
 #endif
+
+/*
+ * Fwd declare struct ast_channel to get rid of gcc warning about
+ * incompatible pointer type passed to ast_register_application2.
+ */
+struct ast_channel;
+
 #include <asterisk/module.h>
 #include <asterisk/channel.h>
 #include <asterisk/config.h>
-- 
1.7.10.2
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.