pike.git / src / operators.c

version» Context lines:

pike.git/src/operators.c:1:   /*   || 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.228 2008/03/22 13:50:23 grubba Exp $ + || $Id: operators.c,v 1.229 2008/03/29 02:04:40 mast Exp $   */      #include "global.h"   #include <math.h>   #include "interpret.h"   #include "svalue.h"   #include "multiset.h"   #include "mapping.h"   #include "array.h"   #include "stralloc.h"
pike.git/src/operators.c:4497:    apply_low (o, f2, 0);    push_int (1);    o_subtract();    move_svalue (&end_pos, --sp);    SET_ONERROR (uwp, do_free_svalue, &end_pos);    }       switch (bound_types & (RANGE_LOW_FROM_BEG|RANGE_LOW_FROM_END|RANGE_LOW_OPEN)) {    case RANGE_LOW_FROM_BEG:    move_svalue (sp++, low); +  mark_free_svalue (low);    break;    case RANGE_LOW_OPEN:    push_int (0);    break;    default:    push_svalue (&end_pos);    move_svalue (sp++, low); -  +  mark_free_svalue (low);    o_subtract();    break;    }       switch (bound_types & (RANGE_HIGH_FROM_BEG|RANGE_HIGH_FROM_END|RANGE_HIGH_OPEN)) {    case RANGE_HIGH_FROM_BEG:    move_svalue (sp++, high); -  +  mark_free_svalue (high);    break;    case RANGE_HIGH_OPEN:    push_int (MAX_INT_TYPE);    break;    default:    push_svalue (&end_pos);    move_svalue (sp++, high); -  +  mark_free_svalue (high);    o_subtract();    break;    }       if (bound_types & (RANGE_LOW_FROM_END|RANGE_HIGH_FROM_END)) {    UNSET_ONERROR (uwp);    free_svalue (&end_pos);    /* Anything might have happened during the calls to    * LFUN__SIZEOF and o_subtract above. */    if (!o->prog)