summaryrefslogtreecommitdiffstats
path: root/e_os.h
diff options
context:
space:
mode:
authorEmilia Kasper <emilia@openssl.org>2014-08-19 13:18:07 +0200
committerEmilia Kasper <emilia@openssl.org>2014-08-21 16:08:55 +0200
commitb30aaafbe5a94c3a6b8f665e13b51d12b3c662b1 (patch)
tree59d4060a02f5a8dccc38c23ea82f429ef5395659 /e_os.h
parentfee8d86d7aa2b449141eb68840681358475d5e07 (diff)
define inline for Visual Studio
In Visual Studio, inline is available in C++ only, however __inline is available for C, see http://msdn.microsoft.com/en-us/library/z8y1yy88.aspx Reviewed-by: Richard Levitte <levitte@openssl.org> Reviewed-by: Dr Stephen Henson <steve@openssl.org> (cherry picked from commit f511b25a7370c775dc9fd6198dbacd1706cf242b) Conflicts: e_os.h
Diffstat (limited to 'e_os.h')
-rw-r--r--e_os.h12
1 files changed, 10 insertions, 2 deletions
diff --git a/e_os.h b/e_os.h
index cc90f5e8ca..532ec6bebf 100644
--- a/e_os.h
+++ b/e_os.h
@@ -360,7 +360,16 @@ static unsigned int _strlen31(const char *str)
# define DEFAULT_HOME "C:"
# endif
-#else /* The non-microsoft world world */
+/*
+ * Visual Studio: inline is available in C++ only, however
+ * __inline is available for C, see
+ * http://msdn.microsoft.com/en-us/library/z8y1yy88.aspx
+ */
+#if defined(_MSC_VER) && !defined(__cplusplus) && !defined(inline)
+# define inline __inline
+#endif
+
+#else /* The non-microsoft world */
# ifdef OPENSSL_SYS_VMS
# define VMS 1
@@ -707,4 +716,3 @@ struct servent *getservbyname(const char *name, const char *proto);
#endif
#endif
-