Changeset 65d683 in git for Singular


Ignore:
Timestamp:
Oct 5, 2016, 4:47:20 PM (8 years ago)
Author:
Hans Schoenemann <hannes@…>
Branches:
(u'spielwiese', 'fe61d9c35bf7c61f2b6cbf1b56e25e2f08d536cc')
Children:
d5122e12287fd5f17a9443a21ced8b72679e4b57
Parents:
0dff7ba270d7f200f14135bad0829a80aa6ec15f
Message:
fix: change of number if normalization happens in output
File:
1 edited

Legend:

Unmodified
Added
Removed
  • Singular/subexpr.cc

    r0dff7ba r65d683  
    235235          break;
    236236          }
    237         case NUMBER_CMD:
    238237        case BIGINT_CMD:
    239           if (t==NUMBER_CMD)
    240           {
    241             number n=(number)d;
    242             nNormalize(n);
    243             d=n;
    244           }
    245238          s=String(d);
    246239          if (s==NULL) return;
     
    249242          omFree((ADDRESS)s);
    250243          break;
     244        case NUMBER_CMD:
     245          {
     246            number n=(number)d;
     247            nNormalize(n);
     248            if ((number)d !=n)
     249            {
     250              d=n;
     251              if (rtyp==IDHDL) IDNUMBER(((idhdl)data))=n;
     252              else if(rtyp==NUMBER_CMD) data=(void*)n;
     253            }
     254            s=String(d);
     255            if (s==NULL) return;
     256            PrintS(s);
     257            omFree((ADDRESS)s);
     258            break;
     259          }
    251260        case LIST_CMD:
    252261        {
     
    822831        case NUMBER_CMD:
    823832          StringSetS((char*) (typed ? "number(" : ""));
    824           if ((rtyp==IDHDL)&&(IDTYP((idhdl)data)==NUMBER_CMD))
    825           {
    826             nWrite(IDNUMBER((idhdl)data));
    827           }
    828           else if (rtyp==NUMBER_CMD)
    829           {
    830             number n=(number)data;
    831             nWrite(n);
    832             data=(char *)n;
    833           }
    834           else if((rtyp==VMINPOLY)&&(rField_is_GF(currRing)))
     833          if((rtyp==VMINPOLY)&&(rField_is_GF(currRing)))
    835834          {
    836835            nfShowMipo(currRing->cf);
     
    838837          else
    839838          {
    840             number n=nCopy((number)d);
    841             nWrite(n);
    842             nDelete(&n);
     839            nWrite((number)d);
    843840          }
    844841          StringAppendS((char*) (typed ? ")" : ""));
Note: See TracChangeset for help on using the changeset viewer.