Am 25.10.2020 um 16:04 schrieb Allin Cottrell:
On Sun, 25 Oct 2020, Allin Cottrell wrote:
> So an interesting test on macOS would be to set GRETL_OLD_EV=1 and see
> if the problem persists.
I just tried on macOS 10.15.6: I got the crash that Fred reported, but
when I set GRETL_OLD_EV=1 there was no crash.
It turns out this is an Apple bug: there are two arguments to DSYEVR
that are not supposed to be referenced when the function is called in
the mode gretl uses (according to the netlib LAPACK docs). So we were
just passing NULL for those arguments. But apparently Apple's DSYEVR
does reference them, hence a crash on dereferencing a null pointer. In
git (snapshots to follow) we now pass pointers to dummy arguments in
those slots as a workaround.
Do you have any link to the detailed API reference to Apple's
Accelerate? I couldn't get any details for dsyev(r) by searching the web.
It doesn't matter much for gretl after your workaround solves the issue,
but in principle I guess it's not clear it is really a bug, perhaps they
just don't follow the netlib benchmark in this detail. But if it is,
perhaps we should report it.
In any case, excellent work of course!
thanks
Sven