summaryrefslogtreecommitdiff
path: root/libio/iofgetpos.c
diff options
context:
space:
mode:
authorRoland McGrath <roland@hack.frob.com>2012-08-06 16:48:14 -0700
committerRoland McGrath <roland@hack.frob.com>2012-08-06 16:48:14 -0700
commit03af952060fee063679864d82cdd76f94d56d263 (patch)
treec5d020757b7fdb3e5d266bbc802e0f7f3798153c /libio/iofgetpos.c
parentc5757acd6e9aafcf042b6cd6d7f9e70d957e1e3a (diff)
downloadglibc-03af952060fee063679864d82cdd76f94d56d263.tar.gz
Clean up lockf64, fseeko64, ftello64, fgetpos64, fsetpos64 for off64_t == off_t.
Diffstat (limited to 'libio/iofgetpos.c')
-rw-r--r--libio/iofgetpos.c20
1 files changed, 18 insertions, 2 deletions
diff --git a/libio/iofgetpos.c b/libio/iofgetpos.c
index 4338b5097a..a1d6bb693a 100644
--- a/libio/iofgetpos.c
+++ b/libio/iofgetpos.c
@@ -1,5 +1,4 @@
-/* Copyright (C) 1993, 1995-2001, 2002, 2003, 2004
- Free Software Foundation, Inc.
+/* Copyright (C) 1993-2012 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
@@ -25,7 +24,17 @@
This exception applies to code released by its copyright holders
in files containing the exception. */
+/* We need to avoid the header declarations of these, because
+ the types don't match _IO_fgetpos and then the compiler will
+ complain about the mismatch when we do the alias below. */
+#define _IO_new_fgetpos64 __renamed__IO_new_fgetpos64
+#define _IO_fgetpos64 __renamed__IO_fgetpos64
+
#include "libioP.h"
+
+#undef _IO_new_fgetpos64
+#undef _IO_fgetpos64
+
#include <errno.h>
#include <stdlib.h>
#include <shlib-compat.h>
@@ -78,3 +87,10 @@ _IO_new_fgetpos (fp, posp)
strong_alias (_IO_new_fgetpos, __new_fgetpos)
versioned_symbol (libc, _IO_new_fgetpos, _IO_fgetpos, GLIBC_2_2);
versioned_symbol (libc, __new_fgetpos, fgetpos, GLIBC_2_2);
+
+#ifdef __OFF_T_MATCHES_OFF64_T
+strong_alias (_IO_new_fgetpos, _IO_new_fgetpos64)
+strong_alias (_IO_new_fgetpos64, __new_fgetpos64)
+versioned_symbol (libc, _IO_new_fgetpos64, _IO_fgetpos64, GLIBC_2_2);
+versioned_symbol (libc, __new_fgetpos64, fgetpos64, GLIBC_2_2);
+#endif