Branch: Tag:

2002-11-23

2002-11-23 20:48:09 by Martin Stjernholm <mast@lysator.liu.se>

Abstracted the operation to move an svalue.

Rev: src/interpret.h:1.120
Rev: src/multiset.c:1.58
Rev: src/svalue.h:1.112

2:   || 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: svalue.h,v 1.111 2002/11/23 20:05:14 mast Exp $ + || $Id: svalue.h,v 1.112 2002/11/23 20:48:09 mast Exp $   */      #ifndef SVALUE_H
451:    } \   }while(0)    + #define move_svalue(TO, FROM) do { \ +  struct svalue *_to = (TO); \ +  struct svalue *_from = (FROM); \ +  dmalloc_touch_svalue(_from); \ +  *_to = *_from; \ +  dmalloc_touch_svalue(_to); \ +  DO_IF_DMALLOC(_from->type = PIKE_T_UNKNOWN; _from->u.refs = (void *) -1); \ +  PIKE_MEM_WO(*_from); \ +  } while (0) +    extern struct svalue dest_ob_zero;      #define free_mixed_svalues(X,Y) do { \