[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Octave-bug-tracker] [bug #58795] ode15i and ode15s fail for Windows 32b
From: |
Markus Mützel |
Subject: |
[Octave-bug-tracker] [bug #58795] ode15i and ode15s fail for Windows 32bit |
Date: |
Thu, 30 Jul 2020 09:43:35 -0400 (EDT) |
User-agent: |
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/84.0.4147.89 Safari/537.36 Edg/84.0.522.44 |
Update of bug #58795 (project octave):
Summary: ode15i and ode15s fail if sunindextype and
octave_idx_type are incompatible => ode15i and ode15s fail for Windows 32bit
_______________________________________________________
Follow-up Comment #26:
There is the following condition in "suitesparse.mk":
ifeq ($(ENABLE_FORTRAN_INT64),yes)
ifeq ($(MXE_WINDOWS_BUILD),yes)
$(PKG)_CPPFLAGS += -DLONGBLAS='long long'
else
$(PKG)_CPPFLAGS += -DLONGBLAS='long'
endif
endif
On Windows (minus maybe cygwin), 'long long' is the "smallest" integer type
that is 64bit. 'long' is 64bit on Linux. But ENABLE_FORTRAN_INT64 is 'no' by
default. And you explicitly disabled it in your test.
I don't see another switch that sets the size of an indexing variable in
suitesparse.mk. But maybe it uses different types depending on whether it is
configured for a 32bit or 64bit executable target.
And indeed in SuiteSparse_config.h, there is the following stanza:
#ifndef SuiteSparse_long
#ifdef _WIN64
#define SuiteSparse_long __int64
#define SuiteSparse_long_max _I64_MAX
#define SuiteSparse_long_idd "I64d"
#else
#define SuiteSparse_long long
#define SuiteSparse_long_max LONG_MAX
#define SuiteSparse_long_idd "ld"
#endif
#define SuiteSparse_long_id "%" SuiteSparse_long_idd
#endif
If I'm reading this right, it defines SuiteSparse_long to the 32bit "long" for
Windows 32bit targets (where _WIN64 isn't defined).
That looks like a bug in SuiteSparse to me. Probably, it should be "#ifdef
_WIN32" (which is defined for Windows 32bit and 64bit targets).
That still seems to be defined the same in the current SuiteSparse version:
https://github.com/DrTimothyAldenDavis/SuiteSparse/blob/master/SuiteSparse_config/SuiteSparse_config.h#L54
I opened an issue upstream here:
https://github.com/DrTimothyAldenDavis/SuiteSparse/issues/55#issue-668736312
_______________________________________________________
Reply to this item at:
<https://savannah.gnu.org/bugs/?58795>
_______________________________________________
Message sent via Savannah
https://savannah.gnu.org/
- [Octave-bug-tracker] [bug #58795] Tests for ode15i and ode15s fail for Octave 32bit on Windows, (continued)
- [Octave-bug-tracker] [bug #58795] Tests for ode15i and ode15s fail for Octave 32bit on Windows, Hg200, 2020/07/27
- [Octave-bug-tracker] [bug #58795] ode15i and ode15s fail if sunindextype and octave_idx_type are incompatible, Markus Mützel, 2020/07/28
- [Octave-bug-tracker] [bug #58795] ode15i and ode15s fail if sunindextype and octave_idx_type are incompatible, Markus Mützel, 2020/07/28
- [Octave-bug-tracker] [bug #58795] ode15i and ode15s fail if sunindextype and octave_idx_type are incompatible, Hg200, 2020/07/28
- [Octave-bug-tracker] [bug #58795] ode15i and ode15s fail if sunindextype and octave_idx_type are incompatible, Markus Mützel, 2020/07/28
- [Octave-bug-tracker] [bug #58795] ode15i and ode15s fail if sunindextype and octave_idx_type are incompatible, Hg200, 2020/07/28
- [Octave-bug-tracker] [bug #58795] ode15i and ode15s fail if sunindextype and octave_idx_type are incompatible, Hg200, 2020/07/30
- [Octave-bug-tracker] [bug #58795] ode15i and ode15s fail if sunindextype and octave_idx_type are incompatible, Markus Mützel, 2020/07/30
- [Octave-bug-tracker] [bug #58795] ode15i and ode15s fail if sunindextype and octave_idx_type are incompatible, Markus Mützel, 2020/07/30
- [Octave-bug-tracker] [bug #58795] ode15i and ode15s fail if sunindextype and octave_idx_type are incompatible, Markus Mützel, 2020/07/30
- [Octave-bug-tracker] [bug #58795] ode15i and ode15s fail for Windows 32bit,
Markus Mützel <=
- [Octave-bug-tracker] [bug #58795] ode15i and ode15s fail for Windows 32bit, Markus Mützel, 2020/07/30
- [Octave-bug-tracker] [bug #58795] ode15i and ode15s fail for Windows 32bit, Markus Mützel, 2020/07/30
- [Octave-bug-tracker] [bug #58795] ode15i and ode15s fail for Windows 32bit, John W. Eaton, 2020/07/30
- [Octave-bug-tracker] [bug #58795] ode15i and ode15s fail for Windows 32bit, John W. Eaton, 2020/07/30
- [Octave-bug-tracker] [bug #58795] ode15i and ode15s fail for Windows 32bit, John W. Eaton, 2020/07/30
- [Octave-bug-tracker] [bug #58795] ode15i and ode15s fail for Windows 32bit, Hg200, 2020/07/30
- [Octave-bug-tracker] [bug #58795] ode15i and ode15s fail for Windows 32bit, Markus Mützel, 2020/07/30
- [Octave-bug-tracker] [bug #58795] ode15i and ode15s fail for Windows 32bit, John W. Eaton, 2020/07/30
- [Octave-bug-tracker] [bug #58795] ode15i and ode15s fail for Windows 32bit, John W. Eaton, 2020/07/30
- [Octave-bug-tracker] [bug #58795] ode15i and ode15s fail for Windows 32bit, Markus Mützel, 2020/07/30