pike.git / src / gc.c

version» Context lines:

pike.git/src/gc.c:3354: Inside #if defined(PIKE_DEBUG)
   if(!gc_destruct_everything &&    (m->flags & (GC_MARKED|GC_XREFERENCED)) == GC_XREFERENCED)    gc_fatal(a, 1, "Thing with external reference missed in gc mark pass.\n");    if ((m->flags & (GC_DO_FREE|GC_LIVE)) == GC_LIVE) live_ref++;    m->flags |= GC_DO_FREE;   #endif       return !(m->flags & GC_LIVE);   }    + #if 0   static void free_obj_arr(void *oa)   {    struct array *obj_arr = *((struct array **)oa);       if (obj_arr) free_array(obj_arr);    free(oa);   } -  + #endif      /*! @class MasterObject    */      /*! @decl void runtime_warning(string subsystem, string msg, mixed|void data)    *!    *! Called by the Pike runtime to warn about data inconsistencies.    *!    *! @param subsystem    *! Runtime subsystem where the warning was generated.
pike.git/src/gc.c:4408:    * type_from_visit_fn only returns types that fit in a TYPE_FIELD. */   PMOD_EXPORT visit_thing_fn *const visit_fn_from_type[MAX_TYPE + 1] = {    (visit_thing_fn *) (ptrdiff_t) -1,    (visit_thing_fn *) (ptrdiff_t) -1,    (visit_thing_fn *) (ptrdiff_t) -1,    (visit_thing_fn *) (ptrdiff_t) -1,    (visit_thing_fn *) (ptrdiff_t) -1,    (visit_thing_fn *) (ptrdiff_t) -1,    (visit_thing_fn *) (ptrdiff_t) -1,    (visit_thing_fn *) (ptrdiff_t) -1, -  &visit_array, -  &visit_mapping, -  &visit_multiset, -  &visit_object, +  (visit_thing_fn *)&visit_array, +  (visit_thing_fn *)&visit_mapping, +  (visit_thing_fn *)&visit_multiset, +  (visit_thing_fn *)&visit_object,    /* visit_function must be called with a whole svalue, so it's not    * included here. */    (visit_thing_fn *) (ptrdiff_t) -1, -  &visit_program, -  &visit_string, -  &visit_type, +  (visit_thing_fn *)&visit_program, +  (visit_thing_fn *)&visit_string, +  (visit_thing_fn *)&visit_type,   };      PMOD_EXPORT TYPE_T type_from_visit_fn (visit_thing_fn *fn)   {    /* Since the array to search is so small, linear search is probably    * fastest. */    unsigned t;    for (t = 0; t < NELEM (visit_fn_from_type); t++)    if (visit_fn_from_type[t] == fn)    return (TYPE_T) t;