aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--winsup/cygwin/include/cygwin/config.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/winsup/cygwin/include/cygwin/config.h b/winsup/cygwin/include/cygwin/config.h
index 2a70832..c9c3565 100644
--- a/winsup/cygwin/include/cygwin/config.h
+++ b/winsup/cygwin/include/cygwin/config.h
@@ -49,6 +49,12 @@ extern inline struct _reent *__getreent (void)
#define __FILENAME_MAX__ 4096 /* Keep in sync with PATH_MAX in limits.h. */
+/* Unfortunately we defined __LARGE64_FILES until Cygwin 3.3.6, so
+ FILE was based on `struct __sFILE64'. The name is exposed into
+ userspace and consequentially used in C++ name mangling. We must
+ redefine __sFILE as __sFILE64 to stay backward compatible. */
+#define __sFILE __sFILE64
+
/* The following block of macros is required to build newlib correctly for
Cygwin. Changing them in applications has no or not the desired effect.
Just leave them alone. */