operandLitValue (right)));
break;
case '/':
- if ((unsigned long) operandLitValue (right) == 0)
+ if ((TYPE_UDWORD) operandLitValue (right) == 0)
{
werror (E_DIVIDE_BY_ZERO);
retval = right;
operandLitValue (right)));
break;
case '%':
- if ((unsigned long) operandLitValue (right) == 0) {
+ if ((TYPE_UDWORD) operandLitValue (right) == 0) {
werror (E_DIVIDE_BY_ZERO);
retval = right;
}
else
retval = operandFromLit ((SPEC_USIGN(let) ?
- (unsigned long) operandLitValue (left) :
- (long) operandLitValue (left)) %
+ (TYPE_UDWORD) operandLitValue (left) :
+ (TYPE_DWORD) operandLitValue (left)) %
(SPEC_USIGN(ret) ?
- (unsigned long) operandLitValue (right) :
- (long) operandLitValue (right)));
+ (TYPE_UDWORD) operandLitValue (right) :
+ (TYPE_DWORD) operandLitValue (right)));
break;
case LEFT_OP:
retval = operandFromLit ((SPEC_USIGN(let) ?
- (unsigned long) operandLitValue (left) :
- (long) operandLitValue (left)) <<
+ (TYPE_UDWORD) operandLitValue (left) :
+ (TYPE_UDWORD) operandLitValue (left)) <<
(SPEC_USIGN(ret) ?
- (unsigned long) operandLitValue (right) :
- (long) operandLitValue (right)));
+ (TYPE_UDWORD) operandLitValue (right) :
+ (TYPE_UDWORD) operandLitValue (right)));
break;
case RIGHT_OP: {
double lval = operandLitValue(left), rval = operandLitValue(right);
switch ((SPEC_USIGN(let) ? 2 : 0) + (SPEC_USIGN(ret) ? 1 : 0))
{
case 0: // left=unsigned right=unsigned
- res=(unsigned long)lval >> (unsigned long)rval;
+ res=(TYPE_UDWORD)lval >> (TYPE_UDWORD)rval;
break;
case 1: // left=unsigned right=signed
- res=(unsigned long)lval >> (signed long)rval;
+ res=(TYPE_UDWORD)lval >> (TYPE_DWORD)rval;
break;
case 2: // left=signed right=unsigned
- res=(signed long)lval >> (unsigned long)rval;
+ res=(TYPE_DWORD)lval >> (TYPE_UDWORD)rval;
break;
case 3: // left=signed right=signed
- res=(signed long)lval >> (signed long)rval;
+ res=(TYPE_DWORD)lval >> (TYPE_DWORD)rval;
break;
}
retval = operandFromLit (res);
break;
case BITWISEAND:
retval = operandFromValue (valCastLiteral (type,
- (unsigned long)operandLitValue(left) &
- (unsigned long)operandLitValue(right)));
+ (TYPE_UDWORD)operandLitValue(left) &
+ (TYPE_UDWORD)operandLitValue(right)));
break;
case '|':
retval = operandFromValue (valCastLiteral (type,
- (unsigned long)operandLitValue(left) |
- (unsigned long)operandLitValue(right)));
+ (TYPE_UDWORD)operandLitValue(left) |
+ (TYPE_UDWORD)operandLitValue(right)));
break;
case '^':
retval = operandFromValue (valCastLiteral (type,
- (unsigned long)operandLitValue(left) ^
- (unsigned long)operandLitValue(right)));
+ (TYPE_UDWORD)operandLitValue(left) ^
+ (TYPE_UDWORD)operandLitValue(right)));
break;
case AND_OP:
retval = operandFromLit (operandLitValue (left) &&
break;
case RRC:
{
- unsigned long i = (unsigned long) operandLitValue (left);
+ TYPE_UDWORD i = (TYPE_UDWORD) operandLitValue (left);
retval = operandFromLit ((i >> (getSize (operandType (left)) * 8 - 1)) |
(i << 1));
break;
case RLC:
{
- unsigned long i = (unsigned long) operandLitValue (left);
+ TYPE_UDWORD i = (TYPE_UDWORD) operandLitValue (left);
retval = operandFromLit ((i << (getSize (operandType (left)) * 8 - 1)) |
(i >> 1));
break;
case '~':
- retval = operandFromLit (~((unsigned long) operandLitValue (left)));
+ retval = operandFromLit (~((TYPE_UDWORD) operandLitValue (left)));
break;
case '!':