summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSebastian Berg <sebastian@sipsolutions.net>2022-01-26 13:30:01 -0600
committerSebastian Berg <sebastian@sipsolutions.net>2022-01-29 06:04:34 -0800
commit7329d17586cf92120cab6471420094e281262c55 (patch)
tree897fd939ee72544de6dafa7767fd5ebae5ce2c77
parent707e8ccb99c46262752c591782e982510c6f4df0 (diff)
downloadnumpy-7329d17586cf92120cab6471420094e281262c55.tar.gz
MAINT: Dereference DTypes (just more typical for "types")
These are not quite types (they are more) of course. Also removes some obviously unused includes.
-rw-r--r--numpy/core/include/numpy/experimental_dtype_api.h65
-rw-r--r--numpy/core/src/umath/wrapping_array_method.c2
2 files changed, 32 insertions, 35 deletions
diff --git a/numpy/core/include/numpy/experimental_dtype_api.h b/numpy/core/include/numpy/experimental_dtype_api.h
index 7b58ded59..1dd6215e6 100644
--- a/numpy/core/include/numpy/experimental_dtype_api.h
+++ b/numpy/core/include/numpy/experimental_dtype_api.h
@@ -404,46 +404,45 @@ PyArray_GetDefaultDescr(PyArray_DTypeMeta *DType)
/*
* NumPy's builtin DTypes:
- * TODO: Should these be dereferenced: `(&(PyArray_DTypeMeta *)table[10]`?
*/
-#define PyArray_BoolDType ((PyArray_DTypeMeta *)__experimental_dtype_api_table[10])
+#define PyArray_BoolDType (*(PyArray_DTypeMeta *)__experimental_dtype_api_table[10])
/* Integers */
-#define PyArray_ByteDType ((PyArray_DTypeMeta *)__experimental_dtype_api_table[11])
-#define PyArray_UByteDType ((PyArray_DTypeMeta *)__experimental_dtype_api_table[12])
-#define PyArray_ShortDType ((PyArray_DTypeMeta *)__experimental_dtype_api_table[13])
-#define PyArray_UShortDType ((PyArray_DTypeMeta *)__experimental_dtype_api_table[14])
-#define PyArray_IntDType ((PyArray_DTypeMeta *)__experimental_dtype_api_table[15])
-#define PyArray_UIntDType ((PyArray_DTypeMeta *)__experimental_dtype_api_table[16])
-#define PyArray_LongDType ((PyArray_DTypeMeta *)__experimental_dtype_api_table[17])
-#define PyArray_ULongDType ((PyArray_DTypeMeta *)__experimental_dtype_api_table[18])
-#define PyArray_LongLongDType ((PyArray_DTypeMeta *)__experimental_dtype_api_table[19])
-#define PyArray_ULongLongDType ((PyArray_DTypeMeta *)__experimental_dtype_api_table[20])
+#define PyArray_ByteDType (*(PyArray_DTypeMeta *)__experimental_dtype_api_table[11])
+#define PyArray_UByteDType (*(PyArray_DTypeMeta *)__experimental_dtype_api_table[12])
+#define PyArray_ShortDType (*(PyArray_DTypeMeta *)__experimental_dtype_api_table[13])
+#define PyArray_UShortDType (*(PyArray_DTypeMeta *)__experimental_dtype_api_table[14])
+#define PyArray_IntDType (*(PyArray_DTypeMeta *)__experimental_dtype_api_table[15])
+#define PyArray_UIntDType (*(PyArray_DTypeMeta *)__experimental_dtype_api_table[16])
+#define PyArray_LongDType (*(PyArray_DTypeMeta *)__experimental_dtype_api_table[17])
+#define PyArray_ULongDType (*(PyArray_DTypeMeta *)__experimental_dtype_api_table[18])
+#define PyArray_LongLongDType (*(PyArray_DTypeMeta *)__experimental_dtype_api_table[19])
+#define PyArray_ULongLongDType (*(PyArray_DTypeMeta *)__experimental_dtype_api_table[20])
/* Integer aliases */
-#define PyArray_Int8Type ((PyArray_DTypeMeta *)__experimental_dtype_api_table[21])
-#define PyArray_UInt8DType ((PyArray_DTypeMeta *)__experimental_dtype_api_table[22])
-#define PyArray_Int16DType ((PyArray_DTypeMeta *)__experimental_dtype_api_table[23])
-#define PyArray_UInt16DType ((PyArray_DTypeMeta *)__experimental_dtype_api_table[24])
-#define PyArray_Int32DType ((PyArray_DTypeMeta *)__experimental_dtype_api_table[25])
-#define PyArray_UInt32DType ((PyArray_DTypeMeta *)__experimental_dtype_api_table[26])
-#define PyArray_Int64DType ((PyArray_DTypeMeta *)__experimental_dtype_api_table[27])
-#define PyArray_UInt64DType ((PyArray_DTypeMeta *)__experimental_dtype_api_table[28])
-#define PyArray_IntpDType ((PyArray_DTypeMeta *)__experimental_dtype_api_table[29])
-#define PyArray_UIntpDType ((PyArray_DTypeMeta *)__experimental_dtype_api_table[30])
+#define PyArray_Int8Type (*(PyArray_DTypeMeta *)__experimental_dtype_api_table[21])
+#define PyArray_UInt8DType (*(PyArray_DTypeMeta *)__experimental_dtype_api_table[22])
+#define PyArray_Int16DType (*(PyArray_DTypeMeta *)__experimental_dtype_api_table[23])
+#define PyArray_UInt16DType (*(PyArray_DTypeMeta *)__experimental_dtype_api_table[24])
+#define PyArray_Int32DType (*(PyArray_DTypeMeta *)__experimental_dtype_api_table[25])
+#define PyArray_UInt32DType (*(PyArray_DTypeMeta *)__experimental_dtype_api_table[26])
+#define PyArray_Int64DType (*(PyArray_DTypeMeta *)__experimental_dtype_api_table[27])
+#define PyArray_UInt64DType (*(PyArray_DTypeMeta *)__experimental_dtype_api_table[28])
+#define PyArray_IntpDType (*(PyArray_DTypeMeta *)__experimental_dtype_api_table[29])
+#define PyArray_UIntpDType (*(PyArray_DTypeMeta *)__experimental_dtype_api_table[30])
/* Floats */
-#define PyArray_HalfType ((PyArray_DTypeMeta *)__experimental_dtype_api_table[31])
-#define PyArray_FloatDType ((PyArray_DTypeMeta *)__experimental_dtype_api_table[32])
-#define PyArray_DoubleDType ((PyArray_DTypeMeta *)__experimental_dtype_api_table[33])
-#define PyArray_LongDoubleDType ((PyArray_DTypeMeta *)__experimental_dtype_api_table[34])
+#define PyArray_HalfType (*(PyArray_DTypeMeta *)__experimental_dtype_api_table[31])
+#define PyArray_FloatDType (*(PyArray_DTypeMeta *)__experimental_dtype_api_table[32])
+#define PyArray_DoubleDType (*(PyArray_DTypeMeta *)__experimental_dtype_api_table[33])
+#define PyArray_LongDoubleDType (*(PyArray_DTypeMeta *)__experimental_dtype_api_table[34])
/* Complex */
-#define PyArray_CFloatDType ((PyArray_DTypeMeta *)__experimental_dtype_api_table[35])
-#define PyArray_CDoubleDType ((PyArray_DTypeMeta *)__experimental_dtype_api_table[36])
-#define PyArray_CLongDoubleDType ((PyArray_DTypeMeta *)__experimental_dtype_api_table[37])
+#define PyArray_CFloatDType (*(PyArray_DTypeMeta *)__experimental_dtype_api_table[35])
+#define PyArray_CDoubleDType (*(PyArray_DTypeMeta *)__experimental_dtype_api_table[36])
+#define PyArray_CLongDoubleDType (*(PyArray_DTypeMeta *)__experimental_dtype_api_table[37])
/* String/Bytes */
-#define PyArray_StringDType ((PyArray_DTypeMeta *)__experimental_dtype_api_table[38])
-#define PyArray_UnicodeDType ((PyArray_DTypeMeta *)__experimental_dtype_api_table[39])
+#define PyArray_StringDType (*(PyArray_DTypeMeta *)__experimental_dtype_api_table[38])
+#define PyArray_UnicodeDType (*(PyArray_DTypeMeta *)__experimental_dtype_api_table[39])
/* Datetime/Timedelta */
-#define PyArray_DatetimeDType ((PyArray_DTypeMeta *)__experimental_dtype_api_table[40])
-#define PyArray_TimedeltaDType ((PyArray_DTypeMeta *)__experimental_dtype_api_table[41])
+#define PyArray_DatetimeDType (*(PyArray_DTypeMeta *)__experimental_dtype_api_table[40])
+#define PyArray_TimedeltaDType (*(PyArray_DTypeMeta *)__experimental_dtype_api_table[41])
/*
diff --git a/numpy/core/src/umath/wrapping_array_method.c b/numpy/core/src/umath/wrapping_array_method.c
index b673bc1d5..9f8f036e8 100644
--- a/numpy/core/src/umath/wrapping_array_method.c
+++ b/numpy/core/src/umath/wrapping_array_method.c
@@ -27,9 +27,7 @@
#include "numpy/ndarraytypes.h"
#include "common.h"
-#include "convert_datatype.h"
#include "array_method.h"
-#include "dtype_transfer.h"
#include "legacy_array_method.h"
#include "dtypemeta.h"
#include "dispatching.h"