On Fri, Oct 09, 2015 at 02:24:23AM -0700, Jean-Pierre Flori wrote:
>
> _ext_names = <char**>omAlloc0(sizeof(char*))
> extname = k.gen()
> _name = k._names[0]
> _ext_names[0] = omStrDup(_name)
> _cfr = rDefault( 0, 1, _ext_names );
>
> _cfr.qideal = idInit(1,1)
> _cfr.qideal.m[0] = minpoly._poly #p_Copy(minpoly._poly, k._ring);
This seems to be the main problem: _cfr.qideal.m[0] must be a poly in
_cfr but not in k, so "=" or p_Copy is not the right procedure here, but
prCopyR should be used:
rComplete(_cfr, 1)
_cfr.qideal.m[0] = prCopyR(minpoly._poly,k._ring,_cfr);
> rComplete(_cfr, 1)
rComplete must be called before prCopyR
> extParam.r = _cfr;
>
> print "here will be a problem. Incorrect minpoly assembly?"
> # _type = nRegister(n_algExt, <cfInitCharProc> naInitChar);
>
> _cf = nInitChar( n_algExt, <void *>&extParam) #
> print "here was a problem. Incorrect minpoly assembly?"
>
>
> And here is what singular prints when nInitChar is called:
>
> ***omError_WrongSize: wrong size specification of addr
> occured at:
> #0 at ??:0 in ??
> occured for addr:0x3fff997801b0 size:32 specified size:24
Yes: poly objects from different rings may have different sizes
>
> // ***dPolyReportError: memory error
> occured at
> occured for poly: z7+z+... addr:0x3fff997801b0 size:32
Hope that helps,
Hannes