diff mbox

[libiberty] : Avoid "enum conversion when passing argument 1 of ‘getrusage’ is invalid in C++" warning

Message ID CAFULd4Zk=Rva-Yrwi9QQ-hBEAeeS6aW_HGXUZxMTiYkbs1m8kg@mail.gmail.com
State New
Headers show

Commit Message

Uros Bizjak July 9, 2015, 2:15 p.m. UTC
On Thu, Jul 9, 2015 at 3:00 PM, Ian Lance Taylor <iant@golang.org> wrote:
> On Wed, Jul 1, 2015 at 3:07 AM, Uros Bizjak <ubizjak@gmail.com> wrote:
>>
>> This patch avoids "enum conversion when passing argument 1 of
>> ‘getrusage’ is invalid in C++" warning when compiling getruntime.c.
>> The condition is copied from sys/resource.h.
>
> Sorry, I've been on vacation.
>
> I think it would be a lot nicer to always use RUSAGE_SELF in the
> function, and earlier in the file write
>
> #ifndef RUSAGE_SELF
> #define RUSAGE_SELF 0
> #endif

Indeed, attached patch builds without warning.

2015-07-09  Uros Bizjak  <ubizjak@gmail.com>

    * getruntime.c (RUSAGE_SELF): Define if not already defined.
    (get_runtime): Use RUSAGE_SELF as argument 1 of getrusage call.

Bootstrapped on x86_64-linux-gnu.

OK for mainline SVN?

Uros.

Comments

Ian Lance Taylor July 9, 2015, 2:32 p.m. UTC | #1
On Thu, Jul 9, 2015 at 7:15 AM, Uros Bizjak <ubizjak@gmail.com> wrote:
> On Thu, Jul 9, 2015 at 3:00 PM, Ian Lance Taylor <iant@golang.org> wrote:
>> On Wed, Jul 1, 2015 at 3:07 AM, Uros Bizjak <ubizjak@gmail.com> wrote:
>>>
>>> This patch avoids "enum conversion when passing argument 1 of
>>> ‘getrusage’ is invalid in C++" warning when compiling getruntime.c.
>>> The condition is copied from sys/resource.h.
>>
>> Sorry, I've been on vacation.
>>
>> I think it would be a lot nicer to always use RUSAGE_SELF in the
>> function, and earlier in the file write
>>
>> #ifndef RUSAGE_SELF
>> #define RUSAGE_SELF 0
>> #endif
>
> Indeed, attached patch builds without warning.
>
> 2015-07-09  Uros Bizjak  <ubizjak@gmail.com>
>
>     * getruntime.c (RUSAGE_SELF): Define if not already defined.
>     (get_runtime): Use RUSAGE_SELF as argument 1 of getrusage call.
>
> Bootstrapped on x86_64-linux-gnu.
>
> OK for mainline SVN?

This is OK.  Thanks for following up.

Ian
diff mbox

Patch

Index: getruntime.c
===================================================================
--- getruntime.c	(revision 225610)
+++ getruntime.c	(working copy)
@@ -65,6 +65,10 @@  Boston, MA 02110-1301, USA.  */
 #define CLOCKS_PER_SEC 1
 #endif
 
+#ifndef RUSAGE_SELF
+#define RUSAGE_SELF 0
+#endif
+
 #ifdef _SC_CLK_TCK
 #define GNU_HZ  sysconf(_SC_CLK_TCK)
 #else
@@ -95,11 +99,7 @@  get_run_time (void)
 #if defined (HAVE_GETRUSAGE) && defined (HAVE_SYS_RESOURCE_H)
   struct rusage rusage;
 
-#if defined __USE_GNU && !defined __cplusplus
   getrusage (RUSAGE_SELF, &rusage);
-#else
-  getrusage (0, &rusage);
-#endif
   return (rusage.ru_utime.tv_sec * 1000000 + rusage.ru_utime.tv_usec
 	  + rusage.ru_stime.tv_sec * 1000000 + rusage.ru_stime.tv_usec);
 #else /* ! HAVE_GETRUSAGE */