You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository was archived by the owner on Apr 17, 2025. It is now read-only.
MingwPy related PRs to Numpy that got reverted (in numpy/numpy#6534) are numpy/numpy#5614 and numpy/numpy#6354. The issues seemed to come from how to detect which compiler is used. That's a bit of a mess right now. Plus mingw32ccompiler.py could use a cleanup as well.
What would be good to start with is to decide/document what situations on Windows need distinguishing and how. First thought:
Compilers:
MSVC 32-bit and 64-bit
MinGW 3.4.5 32-bit (don't break this for a while, there are external users like BioPython).
MingwPy 32-bit and 64-bit
Other MinGW-w64 builds (unsupported by Numpy, but shouldn't break them in numpy.distutils).
Cygwin (?)
How to detect compilers:
In numpy.distutils.misc_util, implement a class that figures out what is what, so we don't get ad-hoc is_win64-like functions inside compiler classes.
That class should allow cleanly checking what compiler is used.
Maybe this needs a better way than parsing gcc --version for mingwpy?
C/C++ code:
There's now stuff like #if defined(__MINGW32__), defined(__MINGW64__),defined(_WIN64)and#if (defined(_MSC_VER)`` in numpy.
It's not always clear if that treats mingw 3.4.5 and mingwpy 32-bit, or mingwpy 64-bit and MSVC, the same or not - and whether that's correct or not.
Starting with a doc page here on how it's recommended to check for each compiler and bit-ness would be useful.