@@ -213,12 +213,13 @@ compare: second] != OF_ORDERED_ASCENDING]; else if ([token isEqual: @"+"]) var = [OFNumber numberWithDouble: [first doubleValue] + [second doubleValue]]; else if ([token isEqual: @"%"]) - var = [OFNumber numberWithIntMax: - [first intMaxValue] % [second intMaxValue]]; + var = [OFNumber numberWithLongLong: + [first longLongValue] % + [second longLongValue]]; else if ([token isEqual: @"&&"]) var = [OFNumber numberWithBool: [first boolValue] && [second boolValue]]; else if ([token isEqual: @"||"]) var = [OFNumber numberWithBool: @@ -236,11 +237,12 @@ if ([token isEqual: @"!"]) var = [OFNumber numberWithBool: ![first boolValue]]; else if ([token isEqual: @"is_real"]) var = [OFNumber numberWithBool: - [first doubleValue] != [first intMaxValue]]; + ([first doubleValue] != + [first longLongValue])]; else OF_ENSURE(0); [stack replaceObjectAtIndex: stackSize - 1 withObject: var];