#12223: the 'sage.rings.complex_mpc' optional extension is broken in
sage-4.8.alpha3 and over
---------------------------------+------------------------------------------
   Reporter:  fbissey            |          Owner:  tbd     
       Type:  defect             |         Status:  new     
   Priority:  major              |      Milestone:  sage-4.8
  Component:  optional packages  |       Keywords:          
Work_issues:                     |       Upstream:  N/A     
   Reviewer:                     |         Author:          
     Merged:                     |   Dependencies:          
---------------------------------+------------------------------------------

Comment(by fbissey):

 the faulty C code:
 {{{
     /* "sage/rings/complex_mpc.pyx":1107
  *         if mpfr_zero_p(self.value.im):
  *             return mpfr_get_d(<mpfr_t> self.value.re,\
  *
 rnd_re((<MPComplexField_class>self._parent).__rnd))             #
 <<<<<<<<<<<<<<
  *         else:
  *             raise TypeError, "can't convert complex to float; use
 abs(z)"
  */
     __pyx_t_2 = PyFloat_FromDouble(mpfr_get_d(((mpfr_t)((struct
 __pyx_obj_4sage_5rings_11complex_mpc_MPComplexNumber
 *)__pyx_v_self)->value->re),
 __pyx_f_4sage_5rings_11complex_mpc_rnd_re(((struct
 __pyx_obj_4sage_5rings_11complex_mpc_MPComplexField_class *)((struct
 __pyx_obj_4sage_5rings_11complex_mpc_MPComplexNumber
 
*)__pyx_v_self)->__pyx_base.__pyx_base.__pyx_base.__pyx_base.__pyx_base._parent)->__pyx___rnd)));
 if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno =
 1106; __pyx_clineno = __LINE__; goto __pyx_L1_error;}  <=line 9720
     __Pyx_GOTREF(__pyx_t_2);
     __pyx_r = __pyx_t_2;
     __pyx_t_2 = 0;
     goto __pyx_L0;
     goto __pyx_L5;
   }
   /*else*/ {

     /* "sage/rings/complex_mpc.pyx":1109
  *
 rnd_re((<MPComplexField_class>self._parent).__rnd))
  *         else:
  *             raise TypeError, "can't convert complex to float; use
 abs(z)"             # <<<<<<<<<<<<<<
  *
  *     def __complex__(self):
  */
     __Pyx_Raise(__pyx_builtin_TypeError, ((PyObject *)__pyx_kp_s_76), 0,
 0);
     {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1109; __pyx_clineno =
 __LINE__; goto __pyx_L1_error;}
   }
   __pyx_L5:;

   __pyx_r = Py_None; __Pyx_INCREF(Py_None);
   goto __pyx_L0;
   __pyx_L1_error:;
   __Pyx_XDECREF(__pyx_t_2);
   __Pyx_AddTraceback("sage.rings.complex_mpc.MPComplexNumber.__float__",
 __pyx_clineno, __pyx_lineno, __pyx_filename);
   __pyx_r = NULL;
   __pyx_L0:;
   __Pyx_XGIVEREF(__pyx_r);
   __Pyx_RefNannyFinishContext();
   return __pyx_r;
 }

 }}}

-- 
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/12223#comment:1>
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.

Reply via email to