Branch: Tag:

1999-03-02

1999-03-02 03:13:35 by Fredrik Hübinette (Hubbe) <hubbe@hubbe.net>

int(X..Y) implemented, plus some bugfixes and removed two memory 'leaks'

Rev: src/constants.c:1.15
Rev: src/global.h:1.28
Rev: src/interpret.c:1.116
Rev: src/interpret.h:1.27
Rev: src/language.yacc:1.111
Rev: src/las.c:1.75
Rev: src/main.c:1.64
Rev: src/modules/Gmp/mpz_glue.c:1.40
Rev: src/operators.c:1.48
Rev: src/pike_types.c:1.54
Rev: src/pike_types.h:1.18
Rev: src/stralloc.h:1.33
Rev: src/svalue.h:1.22
Rev: src/testsuite.in:1.151

5:   \*/   #include "global.h"   #include <math.h> - RCSID("$Id: operators.c,v 1.47 1999/02/10 21:46:46 hubbe Exp $"); + RCSID("$Id: operators.c,v 1.48 1999/03/02 03:13:24 hubbe Exp $");   #include "interpret.h"   #include "svalue.h"   #include "multiset.h"
1940:    /* function(mixed...:int) */    ADD_EFUN2("`!=",f_ne,tFuncV(,tMix,tInt),OPT_TRY_OPTIMIZE,0,generate_comparison);    /* function(mixed:int) */ -  ADD_EFUN2("`!",f_not,tFunc(tMix,tInt),OPT_TRY_OPTIMIZE,optimize_not,generate_not); +  add_efun2("`!",f_not,"!function(int(0..0):mixed)&function(mixed:int(0..0))|function(int(0..0):int(1..1))",OPT_TRY_OPTIMIZE,optimize_not,generate_not);    - #define CMP_TYPE "!function(!object...:mixed)&function(mixed...:int)|function(int|float...:int)|function(string...:int)" + #define CMP_TYPE "!function(!object...:mixed)&function(mixed...:int(0..1))|function(int|float...:int(0..1))|function(string...:int(0..1))"    add_efun2("`<", f_lt,CMP_TYPE,OPT_TRY_OPTIMIZE,0,generate_comparison);    add_efun2("`<=",f_le,CMP_TYPE,OPT_TRY_OPTIMIZE,0,generate_comparison);    add_efun2("`>", f_gt,CMP_TYPE,OPT_TRY_OPTIMIZE,0,generate_comparison);