#11551: Pari segfault on Sage startup in Cygwin
------------------------+---------------------------------------------------
Reporter: kcrisman | Owner: tbd
Type: defect | Status: new
Priority: major | Milestone: sage-4.7.2
Component: cygwin | Keywords: pari
Work_issues: | Upstream: N/A
Reviewer: | Author:
Merged: | Dependencies:
------------------------+---------------------------------------------------
Comment(by leif):
Replying to [comment:14 kcrisman]:
> I tried 2. first. Not very exciting.
{{{
Program received signal SIGSEGV, Segmentation fault.
0x343a8ad5 in pari_err () from /home/.../sage-4.7.1.alpha3/devel/sage
/sage-main/build/sage/rings/real_mpfr.dll
}}}
> I couldn't get anything out of it that I hadn't seen before.
First "result" (i.e., I don't know yet why `pari_error()` is called at
all, but see below):
Debugging this ''bottom-up'', according to your nice screen shot the
segfault originates from:
{{{
#!C
static void
err_init(void)
{
/* make sure pari_err msg starts at the beginning of line */
if (!pari_last_was_newline()) pari_putc('\n');
pariOut->flush(); /***** THIS SEGFAULTS *****/
pariErr->flush();
pariOut = pariErr;
term_color(c_ERR);
}
}}}
So obviously `pariOut` (and most probably also `pariErr`) aren't properly
initialized at that point. (Note that line 885 in the vanilla PARI sources
is the assignment statement, but we patch `src/src/language/init.c` such
that we get an offset of +2 lines.)
PARI error number 14 is "`errpile`" (i.e. heap / [PARI] stack error),
which is most probably raised for the same reason, namely because the PARI
stack apparently isn't [yet] initialized when `cgetr()` gets called.
For the moment, it's up to someone else to donate his/her 2 ct or more...
;-)
--
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/11551#comment:16>
Sage <http://www.sagemath.org>
Sage: Creating a Viable Open Source Alternative to Magma, Maple, Mathematica,
and MATLAB
--
You received this message because you are subscribed to the Google Groups
"sage-trac" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit this group at
http://groups.google.com/group/sage-trac?hl=en.