bug-gnulib
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[PATCH] ignore-value() tweaks


From: Pádraig Brady
Subject: [PATCH] ignore-value() tweaks
Date: Wed, 26 Aug 2009 12:12:57 +0100
User-agent: Thunderbird 2.0.0.6 (X11/20071008)

I noticed the use of ignore-value() recently and
was a little confused by it. How about the attached tweaks
to make it explicit it doesn't handle all return types
and also remove the use of __attribute__ ((__unused__))
which I don't think is required.

cheers,
Pádraig.
>From c0cf06236aba3886d61272ad49d553e9ae4e3fac Mon Sep 17 00:00:00 2001
From: =?utf-8?q?P=C3=A1draig=20Brady?= <address@hidden>
Date: Wed, 12 Aug 2009 09:37:56 +0100
Subject: [PATCH] ignore-value: support old compilers and pointer types

* lib/ignore-value.h: Add a function to suppress warnings
from fuctions that return pointers, and to make it explicit
that one function doesn't handle all cases.  Also don't use
__attribute__ ((unused)) as it's too verbose/non standard
---
 lib/ignore-value.h |   20 ++++++--------------
 1 files changed, 6 insertions(+), 14 deletions(-)

diff --git a/lib/ignore-value.h b/lib/ignore-value.h
index 5f97c91..b630a00 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? */
-- 
1.6.2.5


reply via email to

[Prev in Thread] Current Thread [Next in Thread]