pike.git / src / compilation.h

version» Context lines:

pike.git/src/compilation.h: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: compilation.h,v 1.36 2008/05/03 15:51:50 grubba Exp $ + || $Id: compilation.h,v 1.37 2009/08/17 11:02:11 grubba Exp $   */      /*    * Compilator state push / pop operator construction file    *    * (Can you tell I like macros?)    */      /*    * IMEMBER: do not reset this member when pushing
pike.git/src/compilation.h:53:   #define STACKMEMBER(X,Y,Z) Z,   #define ZMEMBER(X,Y,Z) Z,   #define SNAME(X,Y) \    extern struct X PIKE_CONCAT(Y,_base); \    struct X * Y = & PIKE_CONCAT(Y,_base); \    struct X PIKE_CONCAT(Y,_base) = { 0,   #define SEND };   #endif      #ifdef PUSH - #define IMEMBER(X,Y,Z) MEMCPY((char *)&(nEw->Y), (char *)&(Pike_compiler->Y), sizeof(nEw->Y)); + #define IMEMBER(X,Y,Z) (nEw->Y=Pike_compiler->Y);   #define STACKMEMBER(X,Y,Z) (nEw->Y=Pike_compiler->Y); - #define ZMEMBER(X,Y,Z) MEMSET((char *)&(nEw->Y), 0, sizeof(nEw->Y)); + #define ZMEMBER(X,Y,Z) /* Zapped by the MEMSET in SNAME() below. */;   #define SNAME(X,Y) { \    struct X *nEw; \    nEw=ALLOC_STRUCT(X); \ -  +  MEMSET((char *)nEw, 0, sizeof(struct X)); \    nEw->previous=Pike_compiler;   #define SEND \    Pike_compiler=nEw; \    }      #endif         #ifdef POP   #define IMEMBER(X,Y,Z)
pike.git/src/compilation.h:91:    Pike_compiler=oLd; \    }      #define PCODE(X) X   #else   #define PCODE(X)   #endif         #ifdef INIT - #define IMEMBER(X,Y,Z) MEMCPY((char *)&(c->Y), (char *)&(Pike_compiler->Y), sizeof(c->Y)); + #define IMEMBER(X,Y,Z) (c->Y=Pike_compiler->Y);   #define STACKMEMBER(X,Y,Z) (c->Y=Pike_compiler->Y); - #define ZMEMBER(X,Y,Z) MEMSET((char *)&(c->Y), 0, sizeof(c->Y)); + #define ZMEMBER(X,Y,Z) /* Zapped by the MEMSET in SNAME() below. */;   #define SNAME(X,Y) { \ -  +  MEMSET(c, 0, sizeof(struct X)); \    c->previous = Pike_compiler;   #define SEND \    Pike_compiler = c; \    }      #endif         #ifdef EXIT   #define IMEMBER(X,Y,Z)