ref: dae4cfcb70c0294b99f1f9ee70c8b4cb49d18bb2
parent: 5c185a05875465325d5e3fe706ce5ab8bdf14f16
author: James Zern <jzern@google.com>
date: Wed Apr 2 16:06:07 EDT 2014
tools_common.h: (msvs) avoid redefining off_t in some configurations MSVS will define _off_t / off_t in wchar.h; the former is used locally while the latter is for compatibility. this change overrides off_t as in the past and sets _OFF_T_DEFINED to prevent a clash in types. Change-Id: I9b0e6db586a0a2729b545d93edfc56570d2fcf97
--- a/tools_common.h
+++ b/tools_common.h
@@ -22,10 +22,12 @@
#endif
#if defined(_MSC_VER)
-/* MSVS doesn't define off_t, and uses _f{seek,tell}i64. */
-typedef __int64 off_t;
+/* MSVS uses _f{seek,tell}i64. */
#define fseeko _fseeki64
#define ftello _ftelli64
+typedef long _off_t; // NOLINT - MSVS compatible type
+typedef __int64 off_t; // fseeki64 compatible type
+#define _OFF_T_DEFINED
#elif defined(_WIN32)
/* MinGW defines off_t as long and uses f{seek,tell}o64/off64_t for large
* files. */
--
⑨