Branch: Tag:

2008-03-22

2008-03-22 13:50:23 by Henrik Grubbström (Grubba) <grubba@grubba.org>

Set the integer subtype in all cases...

Rev: src/operators.c:1.228

2:   || This file is part of Pike. For copyright information see COPYRIGHT.   || Pike is distributed under GPL, LGPL and MPL. See the file COPYING   || for more information. - || $Id: operators.c,v 1.227 2008/02/27 23:59:18 grubba Exp $ + || $Id: operators.c,v 1.228 2008/03/22 13:50:23 grubba Exp $   */      #include "global.h"
1641:    for(e=-args; e<0; e++) size+=sp[e].u.integer;    sp-=args-1;    sp[-1].u.integer=size; +  sp[-1].subtype = NUMBER_NUMBER;   #endif /* AUTO_BIGNUM */    break;   
2251:   #endif /* AUTO_BIGNUM */    sp--;    sp[-1].u.integer -= sp[0].u.integer; +  sp[-1].subtype = NUMBER_NUMBER;    return;       case T_STRING:
2474:    case T_INT:    sp--;    sp[-1].u.integer &= sp[0].u.integer; +  sp[-1].subtype = NUMBER_NUMBER;    break;       case T_MAPPING:
2765:    case T_INT:    sp--;    sp[-1].u.integer |= sp[0].u.integer; +  sp[-1].subtype = NUMBER_NUMBER;    break;       case T_MAPPING:
2999:    case T_INT:    sp--;    sp[-1].u.integer ^= sp[0].u.integer; +  sp[-1].subtype = NUMBER_NUMBER;    break;       case T_MAPPING:
3209: Inside #if undefined(AUTO_BIGNUM)
   if (sp[-1].u.integer > 31) {    sp--;    sp[-1].u.integer = 0; +  sp[-1].subtype = NUMBER_NUMBER;    return;    }   #endif /* !AUTO_BIGNUM */
3218:    }    sp--;    sp[-1].u.integer = sp[-1].u.integer << sp->u.integer; +  sp[-1].subtype = NUMBER_NUMBER;   }      /*! @decl int `<<(int arg1, int arg2)
3292:    } else {    sp[-1].u.integer = 0;    } +  sp[-1].subtype = NUMBER_NUMBER;    return;    }       sp--;    sp[-1].u.integer = sp[-1].u.integer >> sp->u.integer; -  +  sp[-1].subtype = NUMBER_NUMBER;   }      /*! @decl int `>>(int arg1, int arg2)
3515:   #endif /* AUTO_BIGNUM */    sp--;    sp[-1].u.integer *= sp[0].u.integer; +  sp[-1].subtype = NUMBER_NUMBER;    return;       default:
3879:    if(tmp*sp[0].u.integer!=sp[-1].u.integer)    tmp--;    sp[-1].u.integer=tmp; +  sp[-1].subtype = NUMBER_NUMBER;    return;    }   
4086:    sp[-1].u.integer=-(-sp[-1].u.integer % -sp[0].u.integer);    }    } +  sp[-1].subtype = NUMBER_NUMBER;    return;       default:
4174:    {    case T_INT:    sp[-1].u.integer = !sp[-1].u.integer; +  sp[-1].subtype = NUMBER_NUMBER;    break;       case T_FUNCTION:
4256:       case T_INT:    sp[-1].u.integer = ~ sp[-1].u.integer; +  sp[-1].subtype = NUMBER_NUMBER;    break;       case T_FLOAT:
4388:    }   #endif /* AUTO_BIGNUM */    sp[-1].u.integer = - sp[-1].u.integer; +  sp[-1].subtype = NUMBER_NUMBER;    return;       default: