bridge/class-master/depend/pari/src/basemath/mftrace.c
/* if CHI is primitive, return CHI itself, not a copy */
if CHI is primitive, return CHI itself, not a copy
if CHI is primitive return CHI itself not a copy
static GEN
mfchartoprimitive(GEN CHI, long *pF)
{
  pari_sp av;
  GEN chi, F;
  if (!CHI) { if (pF) *pF = 1; return mfchartrivial(); }
  av = avma; F = znconreyconductor(gel(CHI,1), gel(CHI,2), &chi);
  if (typ(F) == t_INT) avma = av;
  else
  {
    CHI = leafcopy(CHI);
    gel(CHI,1) = znstar0(F, 1);
    gel(CHI,2) = chi;
  }
  if (pF) *pF = mfcharmodulus(CHI);
  return CHI;
}
static GEN mfchartoprimitive ( GEN CHI , long * pF ) { pari_sp av ; GEN chi , F ; if ( ! CHI ) { if ( pF ) * pF = 1 ; return mfchartrivial ( ) ; } av = avma ; F = znconreyconductor ( gel ( CHI , 1 ) , gel ( CHI , 2 ) , & chi ) ; if ( typ ( F ) == t_INT ) avma = av ; else { CHI = leafcopy ( CHI ) ; gel ( CHI , 1 ) = znstar0 ( F , 1 ) ; gel ( CHI , 2 ) = chi ; } if ( pF ) * pF = mfcharmodulus ( CHI ) ; return CHI ; }
if CHI is primitive, return CHI itself, not a copy
if CHI is primitive return CHI itself not a copy