hurd: Fix PTR_{,DE}MANGLE calls
authorSamuel Thibault <samuel.thibault@ens-lyon.org>
Wed, 6 Jul 2016 09:43:54 +0000 (11:43 +0200)
committerSamuel Thibault <samuel.thibault@ens-lyon.org>
Wed, 6 Jul 2016 09:48:56 +0000 (11:48 +0200)
* libio/iofopncook.c (_IO_cookie_read, _IO_cookie_write,
_IO_cookie_seek, _IO_cookie_close, _IO_old_cookie_seek)
[!PTR_DEMANGLE]: Do not call PTR_DEMANGLE.
(set_callbacks) [!PTR_MANGLE]: Do not call PTR_MANGLE.
* libio/vtables.c (_IO_vtable_check)
[!PTR_DEMANGLE]: Do not call PTR_DEMANGLE.
* libio/libioP.h (IO_set_accept_foreign_vtables)
[!PTR_MANGLE]: Do not call PTR_MANGLE.

ChangeLog
libio/iofopncook.c
libio/libioP.h
libio/vtables.c

index 8b1fa85..3c97faa 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,12 @@
+2016-07-06  Samuel Thibault  <samuel.thibault@ens-lyon.org>
+
+       * libio/iofopncook.c (_IO_cookie_read, _IO_cookie_write,
+       _IO_cookie_seek, _IO_cookie_close, _IO_old_cookie_seek)
+       [!PTR_DEMANGLE]: Do not call PTR_DEMANGLE.
+       (set_callbacks) [!PTR_MANGLE]: Do not call PTR_MANGLE.
+       * libio/libioP.h (IO_set_accept_foreign_vtables)
+       [!PTR_MANGLE]: Do not call PTR_MANGLE.
+
 2016-07-05  H.J. Lu  <hongjiu.lu@intel.com>
 
        [BZ #20314]
index ae5df17..0d05fe6 100644 (file)
@@ -44,7 +44,9 @@ _IO_cookie_read (_IO_FILE *fp, void *buf, _IO_ssize_t size)
 {
   struct _IO_cookie_file *cfile = (struct _IO_cookie_file *) fp;
   cookie_read_function_t *read_cb = cfile->__io_functions.read;
+#ifdef PTR_DEMANGLE
   PTR_DEMANGLE (read_cb);
+#endif
 
   if (read_cb == NULL)
     return -1;
@@ -57,7 +59,9 @@ _IO_cookie_write (_IO_FILE *fp, const void *buf, _IO_ssize_t size)
 {
   struct _IO_cookie_file *cfile = (struct _IO_cookie_file *) fp;
   cookie_write_function_t *write_cb = cfile->__io_functions.write;
+#ifdef PTR_DEMANGLE
   PTR_DEMANGLE (write_cb);
+#endif
 
   if (write_cb == NULL)
     {
@@ -77,7 +81,9 @@ _IO_cookie_seek (_IO_FILE *fp, _IO_off64_t offset, int dir)
 {
   struct _IO_cookie_file *cfile = (struct _IO_cookie_file *) fp;
   cookie_seek_function_t *seek_cb = cfile->__io_functions.seek;
+#ifdef PTR_DEMANGLE
   PTR_DEMANGLE (seek_cb);
+#endif
 
   return ((seek_cb == NULL
           || (seek_cb (cfile->__cookie, &offset, dir)
@@ -91,7 +97,9 @@ _IO_cookie_close (_IO_FILE *fp)
 {
   struct _IO_cookie_file *cfile = (struct _IO_cookie_file *) fp;
   cookie_close_function_t *close_cb = cfile->__io_functions.close;
+#ifdef PTR_DEMANGLE
   PTR_DEMANGLE (close_cb);
+#endif
 
   if (close_cb == NULL)
     return 0;
@@ -140,10 +148,12 @@ static void
 set_callbacks (_IO_cookie_io_functions_t *target,
               _IO_cookie_io_functions_t source)
 {
+#ifdef PTR_MANGLE
   PTR_MANGLE (source.read);
   PTR_MANGLE (source.write);
   PTR_MANGLE (source.seek);
   PTR_MANGLE (source.close);
+#endif
   *target = source;
 }
 
@@ -228,7 +238,9 @@ _IO_old_cookie_seek (_IO_FILE *fp, _IO_off64_t offset, int dir)
   struct _IO_cookie_file *cfile = (struct _IO_cookie_file *) fp;
   int (*seek_cb) (_IO_FILE *, _IO_off_t, int)
     = (int (*) (_IO_FILE *, _IO_off_t, int)) cfile->__io_functions.seek;;
+#ifdef PTR_DEMANGLE
   PTR_DEMANGLE (seek_cb);
+#endif
 
   if (seek_cb == NULL)
     return _IO_pos_BAD;
index 54dc35c..3e12876 100644 (file)
@@ -906,7 +906,9 @@ extern void (*IO_accept_foreign_vtables) (void) attribute_hidden;
 static inline void
 IO_set_accept_foreign_vtables (void (*flag) (void))
 {
+#ifdef PTR_MANGLE
   PTR_MANGLE (flag);
+#endif
   atomic_store_relaxed (&IO_accept_foreign_vtables, flag);
 }
 
index e364ea0..b361f44 100644 (file)
@@ -41,7 +41,9 @@ _IO_vtable_check (void)
 #ifdef SHARED
   /* Honor the compatibility flag.  */
   void (*flag) (void) = atomic_load_relaxed (&IO_accept_foreign_vtables);
+#ifdef PTR_DEMANGLE
   PTR_DEMANGLE (flag);
+#endif
   if (flag == &_IO_vtable_check)
     return;