pike.git / src / builtin_functions.c

version» Context lines:

pike.git/src/builtin_functions.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: builtin_functions.c,v 1.586 2004/12/23 13:44:44 grubba Exp $ + || $Id: builtin_functions.c,v 1.587 2005/02/09 16:35:50 mast Exp $   */      #include "global.h"   #include "interpret.h"   #include "svalue.h"   #include "pike_macros.h"   #include "object.h"   #include "program.h"   #include "array.h"   #include "pike_error.h"
pike.git/src/builtin_functions.c:2370:    o=Pike_fp->current_object;    }    if (o->prog && o->prog->flags & PROGRAM_NO_EXPLICIT_DESTRUCT)    PIKE_ERROR("destruct", "Object can't be destructed explicitly.\n",    Pike_sp, args);   #ifdef PIKE_SECURITY    if(!CHECK_DATA_SECURITY(o, SECURITY_BIT_DESTRUCT))    Pike_error("Destruct permission denied.\n");   #endif    debug_malloc_touch(o); -  destruct(o); +  destruct_object (o, DESTRUCT_EXPLICIT);    pop_n_elems(args);    destruct_objects_to_destruct();   }      /*! @decl array indices(string|array|mapping|multiset|object x)    *!    *! Return an array of all valid indices for the value @[x].    *!    *! For strings and arrays this is simply an array of ascending    *! numbers.
pike.git/src/builtin_functions.c:8690: Inside #if defined(WITH_DOUBLE_PRECISION_SVALUE)
     #ifdef WITH_DOUBLE_PRECISION_SVALUE    ADD_INT_CONSTANT("__DOUBLE_PRECISION_FLOAT__",1,0);   #else   #ifdef WITH_LONG_DOUBLE_PRECISION_SVALUE    ADD_INT_CONSTANT("__LONG_DOUBLE_PRECISION_FLOAT__",1,0);   #else    ADD_INT_CONSTANT("__FLOAT_PRECISION_FLOAT__",1,0);   #endif   #endif +  +  ADD_INT_CONSTANT ("DESTRUCT_EXPLICIT", DESTRUCT_EXPLICIT, 0); +  ADD_INT_CONSTANT ("DESTRUCT_NO_REFS", DESTRUCT_NO_REFS, 0); +  ADD_INT_CONSTANT ("DESTRUCT_GC", DESTRUCT_GC, 0); +  ADD_INT_CONSTANT ("DESTRUCT_CLEANUP", DESTRUCT_CLEANUP, 0);   }