summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCharles Harris <charlesr.harris@gmail.com>2015-08-02 13:43:14 -0400
committerCharles Harris <charlesr.harris@gmail.com>2015-08-02 13:43:14 -0400
commit3ee2cb320f24250c80d97761b4e4e62bc407e719 (patch)
tree36ae0229740337945f76c0daa6fb56287efd3a86
parentb03c303c051dcbad3dc485ef4b2fd604dafaa4e6 (diff)
parente27035fbba70e4ec719ec86962babf957d0dad64 (diff)
downloadnumpy-3ee2cb320f24250c80d97761b4e4e62bc407e719.tar.gz
Merge pull request #6141 from cgohlke/patch-1
Enable Visual Studio 2015 C99 features
-rw-r--r--numpy/core/include/numpy/npy_math.h4
-rw-r--r--numpy/core/src/npymath/npy_math_private.h2
-rw-r--r--numpy/core/src/private/npy_config.h19
3 files changed, 21 insertions, 4 deletions
diff --git a/numpy/core/include/numpy/npy_math.h b/numpy/core/include/numpy/npy_math.h
index 8f5d8e6c7..38f182ddb 100644
--- a/numpy/core/include/numpy/npy_math.h
+++ b/numpy/core/include/numpy/npy_math.h
@@ -163,7 +163,7 @@ double npy_spacing(double x);
#ifndef NPY_HAVE_DECL_ISNAN
#define npy_isnan(x) ((x) != (x))
#else
- #ifdef _MSC_VER
+ #if defined(_MSC_VER) && (_MSC_VER < 1900)
#define npy_isnan(x) _isnan((x))
#else
#define npy_isnan(x) isnan(x)
@@ -194,7 +194,7 @@ double npy_spacing(double x);
#ifndef NPY_HAVE_DECL_ISINF
#define npy_isinf(x) (!npy_isfinite(x) && !npy_isnan(x))
#else
- #ifdef _MSC_VER
+ #if defined(_MSC_VER) && (_MSC_VER < 1900)
#define npy_isinf(x) (!_finite((x)) && !_isnan((x)))
#else
#define npy_isinf(x) isinf((x))
diff --git a/numpy/core/src/npymath/npy_math_private.h b/numpy/core/src/npymath/npy_math_private.h
index 284d203bf..cf54d2bd9 100644
--- a/numpy/core/src/npymath/npy_math_private.h
+++ b/numpy/core/src/npymath/npy_math_private.h
@@ -487,7 +487,7 @@ do { \
#ifdef NPY_USE_C99_COMPLEX
/* Microsoft C defines _MSC_VER */
-#ifdef _MSC_VER
+#if defined(_MSC_VER) && (_MSC_VER < 1900)
typedef union {
npy_cdouble npy_z;
_Dcomplex c99_z;
diff --git a/numpy/core/src/private/npy_config.h b/numpy/core/src/private/npy_config.h
index 580b00706..3b369f2e4 100644
--- a/numpy/core/src/private/npy_config.h
+++ b/numpy/core/src/private/npy_config.h
@@ -32,7 +32,7 @@
#endif
/* Disable broken MS math functions */
-#if defined(_MSC_VER) || defined(__MINGW32_VERSION)
+#if (defined(_MSC_VER) && (_MSC_VER < 1900)) || defined(__MINGW32_VERSION)
#undef HAVE_ATAN2
#undef HAVE_ATAN2F
@@ -44,6 +44,23 @@
#endif
+#if defined(_MSC_VER) && (_MSC_VER == 1900)
+
+#undef HAVE_CASIN
+#undef HAVE_CASINF
+#undef HAVE_CASINL
+#undef HAVE_CASINH
+#undef HAVE_CASINHF
+#undef HAVE_CASINHL
+#undef HAVE_CATAN
+#undef HAVE_CATANF
+#undef HAVE_CATANL
+#undef HAVE_CATANH
+#undef HAVE_CATANHF
+#undef HAVE_CATANHL
+
+#endif
+
/* Disable broken gnu trig functions on linux */
#if defined(__linux__) && defined(__GNUC__)