[BACK]Return to serversm.h CVS log [TXT][DIR] Up to [local] / OpenXM / src / kxx

Diff for /OpenXM/src/kxx/serversm.h between version 1.1 and 1.8

version 1.1, 1999/10/08 02:12:13 version 1.8, 2015/10/09 23:46:18
Line 1 
Line 1 
 /* server stack machine, serversm.h  */  /* server stack machine, serversm.h  */
   /* miss of these declarations caused segfault of ox_sm1 2015.10.09 */
   #include <string.h>
   void *sGC_malloc(int n);
   
 void *Sm1_mathcap(void);  void *Sm1_mathcap(void);
 int Sm1_setMathCap(ox_stream os);  int Sm1_setMathCap(ox_stream os);
 void Sm1_pops(void);  void Sm1_pops(void);
Line 13  int Sm1_pushError2(int serial,int no,char *message);
Line 17  int Sm1_pushError2(int serial,int no,char *message);
 char *Sm1_popErrorMessage(char *s);  char *Sm1_popErrorMessage(char *s);
 void Sm1_getsp(void);  void Sm1_getsp(void);
 void Sm1_dupErrors(void);  void Sm1_dupErrors(void);
   void Sm1_pushCMOtag(int serial);
   
   #include <setjmp.h>
   
   #if defined(__CYGWIN__) || defined(__MSYS__)
   #define MYSETJMP(e) _setjmp(e)
   #define MYSIGSETJMP(e,f) _setjmp(e)
   #define MYLONGJMP(e,f) _longjmp(e,f)
   #define MYSIGLONGJMP(e,f) _longjmp(e,f)
   #else
   #define MYSETJMP(e)  setjmp(e)
   #define MYSIGSETJMP(e,f) sigsetjmp(e,f)
   #define MYLONGJMP(e,f) longjmp(e,f)
   #define MYSIGLONGJMP(e,f) siglongjmp(e,f)
   #endif
   
 /********************  Object from Kan/stackm.h *************************/  /********************  Object from Kan/stackm.h *************************/
 #define Snull             0  #define Snull             0
 #define Sinteger          1     /* integer */  #define Sinteger          1     /* integer */
Line 35  struct object{
Line 53  struct object{
   int tag;                /* class identifier */    int tag;                /* class identifier */
   union cell lc;          /* left cell */    union cell lc;          /* left cell */
   union cell rc;          /* right cell */    union cell rc;          /* right cell */
     struct object *attr;
 };  };
   #define OINIT  { .attr = NULL }
   
 /********** macros to use Sarray **********************/  /********** macros to use Sarray **********************/
 /* put to Object Array */  /* put to Object Array */
 #define putoa(ob,i,cc) {\  #define putoa(ob,i,cc) {\
Line 57  void KSpush(struct object ob);
Line 78  void KSpush(struct object ob);
 struct object KfindUserDictionary(char *s);  struct object KfindUserDictionary(char *s);
 struct object KputUserDictionary(char *s,struct object ob);  struct object KputUserDictionary(char *s,struct object ob);
 struct object KnewErrorPacket(int serial,int no,char *s);  struct object KnewErrorPacket(int serial,int no,char *s);
   struct object KnewErrorPacketObj(struct object);
 struct object KSmathCap(void);  /* defined plugin/cmo.c */  struct object KSmathCap(void);  /* defined plugin/cmo.c */
 void *KSmathCapByStruct(void);  /* defined plugin/cmo.c */  void *KSmathCapByStruct(void);  /* defined plugin/cmo.c */
 char *popErrorStackByString(void);  char *popErrorStackByString(void);
 struct object KSdupErrors(void);  struct object KSdupErrors(void);
 struct object KpoInteger(int i);  struct object KpoInteger(int i);
   struct object KpoString(char *s);
   struct object KSpeek(int k);
   struct object KSnewObjectArray(int k);

Legend:
Removed from v.1.1  
changed lines
  Added in v.1.8

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>