From 75291c57b91d9a328fbb19dcc01195fb1ddc8468 Mon Sep 17 00:00:00 2001 From: Olivier Hainque Date: Tue, 3 Jan 2012 11:44:34 +0000 Subject: [PATCH] system.h: Prior to #define, #undef fopen and freopen unconditionally. gcc/ * system.h: Prior to #define, #undef fopen and freopen unconditionally. libcpp/ * system.h: Likewise. From-SVN: r182837 --- gcc/ChangeLog | 4 ++++ gcc/system.h | 11 ++++++++--- libcpp/ChangeLog | 4 ++++ libcpp/system.h | 8 ++++++++ 4 files changed, 24 insertions(+), 3 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index c95a7ef05b7..dd3c6d7a2ff 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,7 @@ +2012-01-03 Olivier Hainque + + * system.h: Prior to #define, #undef fopen and freopen unconditionally. + 2012-01-03 Olivier Hainque * collect2.c (main): In AIX specific computations for vector diff --git a/gcc/system.h b/gcc/system.h index 0a943a3a3fe..51520e19f51 100644 --- a/gcc/system.h +++ b/gcc/system.h @@ -47,9 +47,14 @@ along with GCC; see the file COPYING3. If not see #endif /* Use the unlocked open routines from libiberty. */ -#ifdef fopen /* fopen is a #define on VMS. */ -#undef fopen -#endif + +/* Some of these are #define on some systems, e.g. on AIX to redirect + the names to 64bit capable functions for LARGE_FILES support. These + redefs are pointless here so we can override them. */ + +#undef fopen +#undef freopen + #define fopen(PATH,MODE) fopen_unlocked(PATH,MODE) #define fdopen(FILDES,MODE) fdopen_unlocked(FILDES,MODE) #define freopen(PATH,MODE,STREAM) freopen_unlocked(PATH,MODE,STREAM) diff --git a/libcpp/ChangeLog b/libcpp/ChangeLog index 261b8a52067..dfe18d08760 100644 --- a/libcpp/ChangeLog +++ b/libcpp/ChangeLog @@ -1,3 +1,7 @@ +2012-01-03 Olivier Hainque + + * system.h: Prior to #define, #undef fopen and freopen unconditionally. + 2011-12-20 Joseph Myers * include/cpplib.h (CLK_GNUC1X): Change to CLK_GNUC11. diff --git a/libcpp/system.h b/libcpp/system.h index 0f15e12737a..2a1f7096703 100644 --- a/libcpp/system.h +++ b/libcpp/system.h @@ -44,6 +44,14 @@ along with GCC; see the file COPYING3. If not see #endif /* Use the unlocked open routines from libiberty. */ + +/* Some of these are #define on some systems, e.g. on AIX to redirect + the names to 64bit capable functions for LARGE_FILES support. These + redefs are pointless here so we can override them. */ + +#undef fopen +#undef freopen + #define fopen(PATH,MODE) fopen_unlocked(PATH,MODE) #define fdopen(FILDES,MODE) fdopen_unlocked(FILDES,MODE) #define freopen(PATH,MODE,STREAM) freopen_unlocked(PATH,MODE,STREAM)