Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mono/mono.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJo Shields <jo.shields@xamarin.com>2014-11-21 11:59:49 +0300
committerJo Shields <jo.shields@xamarin.com>2014-11-26 20:53:38 +0300
commit1b35c8b74a31597108fbae72f7ac597c7d82dc0d (patch)
treee471e541303f031b41fd4a463e7a2fc14e2de5f2
parentb92d2bd2398f8d54e2f47e281f3da2ea5f3c79d8 (diff)
[msvc] Define SSIZE_MAX if not already defined (i.e. on Windows)
limits.h from MSVC does not include SIZE_MAX or SSIZE_MAX. We need the latter to build sgen, so define it. (cherry picked from commit cf4d77d21d2d15f5775a1cf72bfe8486e5a0dff5)
-rw-r--r--mono/metadata/sgen-los.c1
-rw-r--r--mono/utils/mono-compiler.h14
2 files changed, 15 insertions, 0 deletions
diff --git a/mono/metadata/sgen-los.c b/mono/metadata/sgen-los.c
index 8e823b05537..dc104a0a8cd 100644
--- a/mono/metadata/sgen-los.c
+++ b/mono/metadata/sgen-los.c
@@ -38,6 +38,7 @@
#include "metadata/sgen-cardtable.h"
#include "metadata/sgen-memory-governor.h"
#include "utils/mono-mmap.h"
+#include "utils/mono-compiler.h"
#define LOS_SECTION_SIZE (1024 * 1024)
diff --git a/mono/utils/mono-compiler.h b/mono/utils/mono-compiler.h
index d3c41ba44df..bad994cc293 100644
--- a/mono/utils/mono-compiler.h
+++ b/mono/utils/mono-compiler.h
@@ -219,6 +219,20 @@
#include <BaseTsd.h>
typedef SSIZE_T ssize_t;
+/*
+ * SSIZE_MAX is not defined in MSVC, so define it here.
+ *
+ * These values come from MinGW64, and are public domain.
+ *
+ */
+#ifndef SSIZE_MAX
+#ifdef _WIN64
+#define SSIZE_MAX _I64_MAX
+#else
+#define SSIZE_MAX INT_MAX
+#endif
+#endif
+
#endif /* _MSC_VER */
#if !defined(_MSC_VER) && !defined(PLATFORM_SOLARIS) && !defined(_WIN32) && !defined(__CYGWIN__) && !defined(MONOTOUCH) && HAVE_VISIBILITY_HIDDEN