Frank Quinn created PROTON-420: ---------------------------------- Summary: Warnings Presented When Using Strict Compiler Flags Key: PROTON-420 URL: https://issues.apache.org/jira/browse/PROTON-420 Project: Qpid Proton Issue Type: Bug Components: proton-c Affects Versions: 0.5 Environment: GCC 4.4.7 Reporter: Frank Quinn
Hi Folks, In our project, we currently use the following compiler flags for gcc (tested in version 4.4.7): -Wall -Wdeclaration-after-statement -Wmissing-prototypes -Wstrict-prototypes -Werror Unfortunately this causes problems in recent versions of proton as its headers produce some warnings of their own. The ones we have spotted can be recreated using the following code: #include <proton/error.h> #include <proton/messenger.h> int main(){} Compiled with: $ gcc -Wall -Wdeclaration-after-statement -Wmissing-prototypes -Wstrict-prototypes -Werror -I./qpid-proton-0.5/proton-c/include/ test.c -o test cc1: warnings being treated as errors In file included from test.c:1: ./qpid-proton-0.5/proton-c/include/proton/error.h:46: error: function declaration isn’t a prototype In file included from test.c:2: ./qpid-proton-0.5/proton-c/include/proton/messenger.h:458:29: error: "/*" within comment ./qpid-proton-0.5/proton-c/include/proton/messenger.h:466:40: error: "/*" within comment ./qpid-proton-0.5/proton-c/include/proton/messenger.h:470:32: error: "/*" within comment ./qpid-proton-0.5/proton-c/include/proton/messenger.h:475:34: error: "/*" within comment test.c:4: error: function declaration isn’t a prototype The first one can be resolved by changing pn_error() to pn_error(void) and the others can be fixed simply by adding some spacing. We typically just hack our local copies for testing, but we figured it may be better to get this into the main code stream if you guys can find the time to put it in. Cheers, Frank -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira