From: Petteri Aimonen Date: Thu, 9 Aug 2012 13:15:23 +0000 (+0300) Subject: Declare warn_unused_result only on GCC >= 3.4.0. X-Git-Tag: 3.99.1~14^2~474 X-Git-Url: https://gerrit.automotivelinux.org/gerrit/gitweb?a=commitdiff_plain;ds=sidebyside;h=8d5086f052f4282f22d350ac44f6699f3bdf7a06;p=apps%2Flow-level-can-service.git Declare warn_unused_result only on GCC >= 3.4.0. Thanks to cea.max.simoes for bug report & fix. Update issue 25 Status: FixedInGit --- diff --git a/pb_decode.c b/pb_decode.c index 6d3a0b6..5ef40ec 100644 --- a/pb_decode.c +++ b/pb_decode.c @@ -3,12 +3,12 @@ * 2011 Petteri Aimonen */ - -#ifdef __GNUC__ -/* Verify that we remember to check all return values for proper error propagation */ -#define checkreturn __attribute__((warn_unused_result)) +/* The warn_unused_result attribute appeared first in gcc-3.4.0 */ +#if !defined(__GNUC__) || ( __GNUC__ < 3) || (__GNUC__ == 3 && __GNUC_MINOR__ < 4) + #define checkreturn #else -#define checkreturn + /* Verify that we remember to check all return values for proper error propagation */ + #define checkreturn __attribute__((warn_unused_result)) #endif #include "pb.h" diff --git a/pb_encode.c b/pb_encode.c index 8868bb6..3fc0381 100644 --- a/pb_encode.c +++ b/pb_encode.c @@ -8,14 +8,14 @@ #include "pb_encode.h" #include -#ifdef __GNUC__ -/* Verify that we remember to check all return values for proper error propagation */ -#define checkreturn __attribute__((warn_unused_result)) +/* The warn_unused_result attribute appeared first in gcc-3.4.0 */ +#if !defined(__GNUC__) || ( __GNUC__ < 3) || (__GNUC__ == 3 && __GNUC_MINOR__ < 4) + #define checkreturn #else -#define checkreturn + /* Verify that we remember to check all return values for proper error propagation */ + #define checkreturn __attribute__((warn_unused_result)) #endif - typedef bool (*pb_encoder_t)(pb_ostream_t *stream, const pb_field_t *field, const void *src) checkreturn; /* --- Function pointers to field encoders ---