Fix macroization of inline in C++
When compiling as C++, MSVC complains about our macroization of a keyword.
Stop doing that as we know inline is always available in C++
diff --git a/ChangeLog b/ChangeLog
index 05450f6..6b29dc1 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -5,6 +5,7 @@
Bugfix
* Fix compile error in net.c with musl libc. Found and patch provided by
zhasha (#278).
+ * Fix macroization of 'inline' keywork when building as C++. (#279)
= Version 1.2.16 released 2015-09-17
diff --git a/include/polarssl/cipher.h b/include/polarssl/cipher.h
index e78f8d1..006b104 100644
--- a/include/polarssl/cipher.h
+++ b/include/polarssl/cipher.h
@@ -29,10 +29,8 @@
#include <string.h>
-#if defined(_MSC_VER) && !defined(inline)
-#define inline _inline
-#else
-#if defined(__ARMCC_VERSION) && !defined(inline)
+#if ( defined(__ARMCC_VERSION) || defined(_MSC_VER) ) && \
+ !defined(inline) && !defined(__cplusplus)
#define inline __inline
#endif /* __ARMCC_VERSION */
#endif /*_MSC_VER */
diff --git a/include/polarssl/md.h b/include/polarssl/md.h
index e94f9be..ae38aad 100644
--- a/include/polarssl/md.h
+++ b/include/polarssl/md.h
@@ -28,13 +28,10 @@
#include <string.h>
-#if defined(_MSC_VER) && !defined(inline)
-#define inline _inline
-#else
-#if defined(__ARMCC_VERSION) && !defined(inline)
+#if ( defined(__ARMCC_VERSION) || defined(_MSC_VER) ) && \
+ !defined(inline) && !defined(__cplusplus)
#define inline __inline
-#endif /* __ARMCC_VERSION */
-#endif /*_MSC_VER */
+#endif
#define POLARSSL_ERR_MD_FEATURE_UNAVAILABLE -0x5080 /**< The selected feature is not available. */
#define POLARSSL_ERR_MD_BAD_INPUT_DATA -0x5100 /**< Bad input parameters to function. */
diff --git a/include/polarssl/pkcs11.h b/include/polarssl/pkcs11.h
index aefdbf2..5fd952d 100644
--- a/include/polarssl/pkcs11.h
+++ b/include/polarssl/pkcs11.h
@@ -34,10 +34,8 @@
#include <pkcs11-helper-1.0/pkcs11h-certificate.h>
-#if defined(_MSC_VER) && !defined(inline)
-#define inline _inline
-#else
-#if defined(__ARMCC_VERSION) && !defined(inline)
+#if ( defined(__ARMCC_VERSION) || defined(_MSC_VER) ) && \
+ !defined(inline) && !defined(__cplusplus)
#define inline __inline
#endif /* __ARMCC_VERSION */
#endif /*_MSC_VER */
diff --git a/include/polarssl/ssl.h b/include/polarssl/ssl.h
index e31b776..b4796a1 100644
--- a/include/polarssl/ssl.h
+++ b/include/polarssl/ssl.h
@@ -43,13 +43,10 @@
#include "zlib.h"
#endif
-#if defined(_MSC_VER) && !defined(inline)
-#define inline _inline
-#else
-#if defined(__ARMCC_VERSION) && !defined(inline)
+#if ( defined(__ARMCC_VERSION) || defined(_MSC_VER) ) && \
+ !defined(inline) && !defined(__cplusplus)
#define inline __inline
-#endif /* __ARMCC_VERSION */
-#endif /*_MSC_VER */
+#endif
/*
* SSL Error codes