-
-
Notifications
You must be signed in to change notification settings - Fork 14
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Issues with long double on Windows? #37
Comments
Thanks for investigating. I've seen segfaults on symengine too, but those tests seem related to |
The symengine failures were due to the usage of |
Hi @isuruf ! I have done a bit more investigating, and can confirm that the segfaults in my test suite all happen when passing Do you think it would be possible to add the |
Which API are we talking about? GMP doesn't have one AFAIK. |
You are right, I was misremembering. It is actually MPFR which does have support for https://www.mpfr.org/mpfr-current/mpfr.html#index-mpfr_005fset_005fld And so on... |
Would you be able to use |
Let me try... |
Maybe something like conda-forge/mpfr-feedstock#50 would be good |
Yep that worked, thanks a lot!
I think this is a good idea in principle, however functions being turned into macros would break code that invokes them prepending BTW, there are also functions from the MPC API taking |
I'm not sure what this means? Something like below works for me void foo() {
};
#define asd foo
int main() {
::asd();
}; |
I remember this not working at one point at least on some compilers, but either I am misremembering or it got fixed. |
@isuruf For the function pointers, this is what I mean: |
Solution to issue cannot be found in the documentation.
Issue
Hello!
I have a conda-forge package that used to depend (on Windows) on MPIR. As suggested by the conda bot, I tried today to switch to GMP instead. Unfortunately, when building against GMP on Windows, my test suite reports a few segfaults and test failures:
https://github.com/bluescarni/mppp/actions/runs/12064541923/job/33641559234?pr=319#step:5:1884
I am currently investigating, but the preliminary result is that the segfaults/errors happen in tests where
long double
values are being passed into the GMP API. This make sense to me, since, AFAIR, mingw provides by default 80-bitlong double
, while MSVC (which I am using to compile my library) provides 64-bitlong double
.Is this diagnosis correct? If so, what is the correct way of dealing with this?
Installed packages
Environment info
The text was updated successfully, but these errors were encountered: