This is the mail archive of the libc-alpha@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[PATCH] Prevent warning in pldd


After introducing static_assert in assert.h, GCC now issues a warning:

pldd-xx.c:26:0: warning: "static_assert" redefined [enabled by default]
../assert/assert.h:119:0: note: this is the location of the previous definition

We can circumvent this by e.g. renaming "static_assert" in pldd-xx.c
to something that won't clash with assert.h.  Regtested on x86_64-linux,
builded with both GCC 4.6.3 and 4.8, ok for trunk?

2012-04-16  Marek Polacek  <polacek@redhat.com>

	* elf/pldd-xx.c: Rename static_assert to pldd_assert.

--- libc/elf/pldd-xx.c.mp	2012-04-16 13:45:15.115714703 +0200
+++ libc/elf/pldd-xx.c	2012-04-16 18:42:50.785141377 +0200
@@ -1,4 +1,4 @@
-/* Copyright (C) 2011 Free Software Foundation, Inc.
+/* Copyright (C) 2011-2012 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Contributed by Ulrich Drepper <drepper@gmail.com>, 2011.
 
@@ -23,7 +23,7 @@
 #define EW_(e, w, t) EW__(e, w, _##t)
 #define EW__(e, w, t) e##w##t
 
-#define static_assert(name, exp) \
+#define pldd_assert(name, exp) \
   typedef int __assert_##name[((exp) != 0) - 1]
 
 
@@ -39,11 +39,11 @@ struct E(link_map)
   EW(Addr) l_libname;
 };
 #if CLASS == __ELF_NATIVE_CLASS
-static_assert (l_addr, (offsetof (struct link_map, l_addr)
+pldd_assert (l_addr, (offsetof (struct link_map, l_addr)
 			== offsetof (struct E(link_map), l_addr)));
-static_assert (l_name, (offsetof (struct link_map, l_name)
+pldd_assert (l_name, (offsetof (struct link_map, l_name)
 			== offsetof (struct E(link_map), l_name)));
-static_assert (l_next, (offsetof (struct link_map, l_next)
+pldd_assert (l_next, (offsetof (struct link_map, l_next)
 			== offsetof (struct E(link_map), l_next)));
 #endif
 
@@ -54,9 +54,9 @@ struct E(libname_list)
   EW(Addr) next;
 };
 #if CLASS == __ELF_NATIVE_CLASS
-static_assert (name, (offsetof (struct libname_list, name)
+pldd_assert (name, (offsetof (struct libname_list, name)
 		      == offsetof (struct E(libname_list), name)));
-static_assert (next, (offsetof (struct libname_list, next)
+pldd_assert (next, (offsetof (struct libname_list, next)
 		      == offsetof (struct E(libname_list), next)));
 #endif
 
@@ -69,9 +69,9 @@ struct E(r_debug)
   EW(Addr) r_map;
 };
 #if CLASS == __ELF_NATIVE_CLASS
-static_assert (r_version, (offsetof (struct r_debug, r_version)
+pldd_assert (r_version, (offsetof (struct r_debug, r_version)
 			   == offsetof (struct E(r_debug), r_version)));
-static_assert (r_map, (offsetof (struct r_debug, r_map)
+pldd_assert (r_map, (offsetof (struct r_debug, r_map)
 		       == offsetof (struct E(r_debug), r_map)));
 #endif
 
	Marek


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]