From c232dc71492aca02861923bf1a082632703dfb16 Mon Sep 17 00:00:00 2001 From: =?utf8?q?P=C3=A1draig=20Brady?= Date: Wed, 12 Aug 2009 09:37:56 +0100 Subject: [PATCH] ignore-value: handle pointer types, too * lib/ignore-value.h (__attribute__): Remove definition. (ignore_value): Remove use of "__attribute__ ((unused))" in favor of a more concise and more-often effective "(void) i" statement. (ignore_ptr): New function to suppress warnings from functions that return pointers, and to make it explicit that one function doesn't handle all cases. --- ChangeLog | 10 ++++++++++ lib/ignore-value.h | 20 ++++++-------------- 2 files changed, 16 insertions(+), 14 deletions(-) diff --git a/ChangeLog b/ChangeLog index 952e5c86d..fb7d7dd1e 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,13 @@ +2009-08-26 Pádraig Brady + + ignore-value: handle pointer types, too + * lib/ignore-value.h (__attribute__): Remove definition. + (ignore_value): Remove use of "__attribute__ ((unused))" in favor + of a more concise and more-often effective "(void) i" statement. + (ignore_ptr): New function to suppress warnings from functions that + return pointers, and to make it explicit that one function doesn't + handle all cases. + 2009-08-25 Bruno Haible dup2: work around a Linux bug. diff --git a/lib/ignore-value.h b/lib/ignore-value.h index 5f97c91c3..86cfad77b 100644 --- a/lib/ignore-value.h +++ b/lib/ignore-value.h @@ -1,6 +1,6 @@ -/* ignore a value to quiet a compiler warning +/* ignore a function return without a compiler warning - Copyright (C) 2008 Free Software Foundation, Inc. + Copyright (C) 2008-2009 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -17,13 +17,7 @@ /* Written by Jim Meyering. */ -#ifndef __attribute__ -# if __GNUC__ < 2 || (__GNUC__ == 2 && __GNUC_MINOR__ < 8) -# define __attribute__(x) -# endif -#endif - -/* Use this function to avoid a warning when using a function declared with +/* Use these functions to avoid a warning when using a function declared with gcc's warn_unused_result attribute, but for which you really do want to ignore the result. Traditionally, people have used a "(void)" cast to indicate that a function's return value is deliberately unused. However, @@ -38,8 +32,6 @@ "copy.c:233: warning: ignoring return value of 'fchown', declared with attribute warn_unused_result". */ -static inline void -ignore_value (int i __attribute__ ((__unused__))) -{ - /* empty */ -} +static inline void ignore_value (int i) { (void) i; } +static inline void ignore_ptr (void* p) { (void) p; } +/* FIXME: what about aggregate types? */ -- 2.11.0