summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorYukihiro "Matz" Matsumoto <[email protected]>2021-12-29 12:58:43 +0900
committerGitHub <[email protected]>2021-12-29 12:58:43 +0900
commit83f2e75d179e73be999da43ee586512807e03031 (patch)
tree283e24038b3df39c4455943e864541bd38cb73f5
parent6f5c211c78ff369a685bb29f08529e4a8c08f403 (diff)
parent1f3a385ec5ff6b507ea98904568cafc9a330f0aa (diff)
downloadmruby-83f2e75d179e73be999da43ee586512807e03031.tar.gz
mruby-83f2e75d179e73be999da43ee586512807e03031.zip
Merge pull request #5616 from mimaki/refine-ssize_t-on-msvc
Fix build error and refine definition of `ssize_t` on MSVC.
-rw-r--r--include/mruby/common.h5
-rw-r--r--mrbgems/mruby-io/src/io.c6
-rw-r--r--mrbgems/mruby-socket/src/socket.c3
3 files changed, 5 insertions, 9 deletions
diff --git a/include/mruby/common.h b/include/mruby/common.h
index 90c97cf65..c5cfaeb50 100644
--- a/include/mruby/common.h
+++ b/include/mruby/common.h
@@ -28,6 +28,11 @@
# define MRB_END_DECL
#endif
+#if defined _MSC_VER
+#include <BaseTsd.h>
+typedef SSIZE_T ssize_t;
+#endif
+
/**
* Shared compiler macros
*/
diff --git a/mrbgems/mruby-io/src/io.c b/mrbgems/mruby-io/src/io.c
index 8261cf998..765dc9051 100644
--- a/mrbgems/mruby-io/src/io.c
+++ b/mrbgems/mruby-io/src/io.c
@@ -34,12 +34,6 @@
typedef long fsuseconds_t;
typedef int fmode_t;
typedef int mrb_io_read_write_size;
- #ifndef MRB_MINGW32_LEGACY
- #if !defined(_SSIZE_T_) && !defined(_SSIZE_T_DEFINED) && \
- !defined(__have_typedef_ssize_t)
- typedef SSIZE_T ssize_t;
- #endif
- #endif
#ifndef O_TMPFILE
#define O_TMPFILE O_TEMPORARY
diff --git a/mrbgems/mruby-socket/src/socket.c b/mrbgems/mruby-socket/src/socket.c
index 027404459..f0213ad39 100644
--- a/mrbgems/mruby-socket/src/socket.c
+++ b/mrbgems/mruby-socket/src/socket.c
@@ -13,9 +13,6 @@
#include <winerror.h>
#define SHUT_RDWR SD_BOTH
- #ifndef _SSIZE_T_DEFINED
- typedef int ssize_t;
- #endif
typedef int fsize_t;
#else
#include <sys/types.h>