This is cmpinclude.h in view mode; [Download] [Up]
Changes file for /usr/local/src/kcl/./h/cmpinclude.h
Created on Wed Jun 19 11:01:38 1991
Usage \n@s[Original text\n@s|Replacement Text\n@s]
See the file rascal.ics.utexas.edu:/usr2/ftp/merge.c
for a program to merge change files. Anything not between
"\n@s[" and "\n@s]" is a simply a comment.
This file was constructed using emacs and merge.el
Enhancements Copyright (c) W. Schelter All rights reserved.
by (Bill Schelter) wfs@carl.ma.utexas.edu
****Change:(orig (0 0 a))
@s[
@s|
/* Begin for cmpinclude */
#define HAVE_ALLOCA
/* End for cmpinclude */
@s]
****Change:(orig (7 7 a))
@s[#include <stdio.h>
#include <setjmp.h>
@s|#include <stdio.h>
#include <setjmp.h>
#include <varargs.h>
@s]
****Change:(orig (9 9 a))
@s[#define TRUE 1
#define FALSE 0
@s|#define TRUE 1
#define FALSE 0
#ifdef SGC
#define FIRSTWORD short t; char s,m
#define SGC_TOUCH(x) x->d.m=0
#else
#define FIRSTWORD short t; short m
#define SGC_TOUCH(x)
#endif
#define STSET(type,x,i,val) do{SGC_TOUCH(x);STREF(type,x,i) = (val);} while(0)
#ifndef VOL
#define VOL
#endif
#ifndef COM_LENG
#define COM_LENG
#endif
#ifndef CHAR_SIZE
#define CHAR_SIZE 8
#endif
@s]
****Change:(orig (13 13 a))
@s[typedef double longfloat;
@s|typedef double longfloat;
typedef unsigned short fatchar;
#define SIGNED_CHAR(x) (((char ) -1) < (char )0 ? (char) x \
: (x >= (1<<(CHAR_SIZE-1)) ? \
x - (((int)(1<<(CHAR_SIZE-1))) << 1) \
: (char ) x))
@s]
****Change:(orig (14 14 a))
@s[typedef union lispunion *object;
@s|typedef union lispunion *object;
typedef union int_object iobject;
union int_object {int i; object o;};
@s]
****Change:(orig (17 17 c))
@s[struct fixnum_struct {
short t, m;
@s|struct fixnum_struct {
FIRSTWORD;
@s]
****Change:(orig (22 22 c))
@s[struct fixnum_struct small_fixnum_table[];
@s|extern struct fixnum_struct small_fixnum_table[COM_LENG];
@s]
****Change:(orig (23 23 a))
@s[#define small_fixnum(i) (object)(small_fixnum_table+SMALL_FIXNUM_LIMIT+(i))
@s|#define small_fixnum(i) (object)(small_fixnum_table+SMALL_FIXNUM_LIMIT+(i))
struct bignum {
FIRSTWORD;
long *big_self; /* bignum body */
int big_length; /* bignum length */
};
#define MP(x) ((GEN)(x)->big.big_self)
@s]
****Change:(orig (25 25 c))
@s[struct shortfloat_struct {
short t, m;
@s|struct shortfloat_struct {
FIRSTWORD;
@s]
****Change:(orig (30 30 c))
@s[struct longfloat_struct {
short t, m;
@s|struct longfloat_struct {
FIRSTWORD;
@s]
****Change:(orig (35 35 c))
@s[struct character {
short t, m;
@s|struct character {
FIRSTWORD;
@s]
****Change:(orig (40 40 c))
@s[struct character character_table[];
@s|struct character character_table1[256+128];
#define character_table (character_table1+128)
@s]
****Change:(orig (51 51 c))
@s[struct symbol {
short t, m;
@s|struct symbol {
FIRSTWORD;
@s]
****Change:(orig (65 65 c))
@s[struct cons {
short t, m;
@s|struct cons {
FIRSTWORD;
@s]
****Change:(orig (70 70 c))
@s[struct array {
short t, m;
@s|struct array {
FIRSTWORD;
@s]
****Change:(orig (79 79 a))
@s[ short a_elttype;
short a_offset;
};
@s| short a_elttype;
short a_offset;
};
struct fat_string { /* vector header */
FIRSTWORD;
unsigned fs_raw : 24; /* tells if the things in leader are raw */
unsigned char fs_leader_length; /* leader_Length */
int fs_dim; /* dimension */
int fs_fillp; /* fill pointer */
/* For simple vectors, */
/* fs_fillp is equal to fs_dim. */
fatchar *fs_self; /* pointer to the vector Note the leader starts at (int *) *fs_self - fs_leader_length */
};
@s]
****Change:(orig (81 81 c))
@s[struct vector {
short t, m;
@s|struct vector {
FIRSTWORD;
@s]
****Change:(orig (92 92 c))
@s[struct string {
short t, m;
@s|struct string {
FIRSTWORD;
@s]
****Change:(orig (101 101 c))
@s[struct ustring {
short t, m;
@s|struct ustring {
FIRSTWORD;
@s]
****Change:(orig (109 109 a))
@s[ object ust_displaced;
};
@s| object ust_displaced;
};
#define USHORT(x,i) (((unsigned short *)(x)->ust.ust_self)[i])
@s]
****Change:(orig (111 111 c))
@s[struct bitvector {
short t, m;
@s|struct bitvector {
FIRSTWORD;
@s]
****Change:(orig (122 122 c))
@s[struct fixarray {
short t, m;
@s|struct fixarray {
FIRSTWORD;
@s]
****Change:(orig (133 133 c))
@s[struct sfarray {
short t, m;
@s|struct sfarray {
FIRSTWORD;
@s]
****Change:(orig (145 145 c))
@s[struct lfarray {
short t, m;
@s|struct lfarray {
FIRSTWORD;
@s]
****Change:(orig (156 160 c))
@s[struct structure {
short t, m;
object str_name;
object *str_self;
@s, int str_length;
@s|
struct structure { /* structure header */
FIRSTWORD;
object str_def; /* structure definition (a structure) */
object *str_self; /* structure self */
@s]
****Change:(orig (161 161 a))
@s[};
@s|};
#define STREF(type,x,i) (*((type *)(((char *)((x)->str.str_self))+(i))))
@s]
****Change:(orig (163 163 c))
@s[struct cfun {
short t, m;
@s|struct cfun {
FIRSTWORD;
@s]
****Change:(orig (167 168 d))
@s[ char *cf_start;
int cf_size;
@s|
@s]
****Change:(orig (170 171 c))
@s[struct cclosure {
short t, m;
@s|
struct dclosure { /* compiled closure header */
FIRSTWORD;
int (*dc_self)(); /* entry address */
object *dc_env; /* environment */
};
struct cclosure {
FIRSTWORD;
@s]
****Change:(orig (176 177 d))
@s[ char *cc_start;
int cc_size;
@s|
@s]
****Change:(orig (179 179 a))
@s[ object *cc_turbo;
};
@s| object *cc_turbo;
};
struct sfun {
FIRSTWORD;
object sfn_name;
int (*sfn_self)();
object sfn_data;
int sfn_argd;
};
struct vfun {
FIRSTWORD;
object vfn_name;
int (*vfn_self)();
object vfn_data;
unsigned short vfn_minargs;
unsigned short vfn_maxargs;
};
@s]
****Change:(orig (181 181 c))
@s[struct dummy {
short t, m;
@s|struct dummy {
FIRSTWORD;
@s]
****Change:(orig (182 182 a))
@s[};
@s|};
struct stream {
FIRSTWORD;
FILE *sm_fp; /* file pointer */
object sm_object0; /* some object */
object sm_object1; /* some object */
int sm_int0; /* some int */
int sm_int1; /* some int */
char *sm_buffer; /* ptr to BUFSIZE block of storage */
short sm_mode; /* stream mode */
/* of enum smmode */
};
@s]
****Change:(orig (187 187 a))
@s[ struct shortfloat_struct
SF;
@s| struct shortfloat_struct
SF;
struct stream sm;
@s]
****Change:(orig (197 197 a))
@s[ struct string st;
struct ustring ust;
@s| struct string st;
struct ustring ust;
struct bignum big;
@s]
****Change:(orig (203 203 a))
@s[ struct cfun cf;
struct cclosure cc;
@s| struct cfun cf;
struct cclosure cc;
struct sfun sfn;
struct vfun vfn;
@s]
****Change:(orig (204 204 a))
@s[ struct dummy d;
@s| struct dummy d;
struct fat_string fs;
struct dclosure dc;
@s]
****Change:(orig (210 211 c))
@s[ t_cons = 0,
t_start = t_cons,
@s| t_cons,
t_start = 0 , /* t_cons, */
@s]
****Change:(orig (232 232 a))
@s[ t_pathname,
t_cfun,
t_cclosure,
@s| t_pathname,
t_cfun,
t_cclosure,
t_sfun,
t_gfun,
t_vfun,
t_cfdata,
@s]
****Change:(orig (233 233 a))
@s[ t_spice,
@s| t_spice,
t_fat_string,
t_dclosure,
@s]
****Change:(orig (241 241 c))
@s[#define endp(obje) endp1(obje)
object value_stack[];
@s|#define endp(obje) endp1(obje)
extern object value_stack[COM_LENG];
@s]
****Change:(orig (270 271 c))
@s[struct bds_bd bind_stack[];
#define bds_org bind_stack
@s|extern struct bds_bd bind_stack[COM_LENG];
@s]
****Change:(orig (272 272 a))
@s[typedef struct bds_bd *bds_ptr;
@s|typedef struct bds_bd *bds_ptr;
bds_ptr bds_org;
@s]
****Change:(orig (288 289 c))
@s[struct invocation_history ihs_stack[];
#define ihs_org ihs_stack
@s|extern struct invocation_history ihs_stack[COM_LENG];
ihs_ptr ihs_org;
@s]
****Change:(orig (314 315 c))
@s[struct frame frame_stack[];
#define frs_org frame_stack
@s|extern struct frame frame_stack[COM_LENG];
frame_ptr frs_org;
@s]
****Change:(orig (406 406 a))
@s[struct symbol Cnil_body, Ct_body;
object MF();
@s|struct symbol Cnil_body, Ct_body;
object MF();
object MFnew();
@s]
****Change:(orig (424 424 a))
@s[object make_cclosure();
@s|object make_cclosure();
object make_cclosure_new();
@s]
****Change:(orig (441 441 a))
@s[object getf();
object putprop();
@s|object getf();
object putprop();
object sputprop();
@s]
****Change:(orig (458 458 a))
@s[object aref1();
object aset1();
@s|object aref1();
object aset1();
void call_or_link();
object call_proc();
object call_proc0();
object call_proc1();
object call_proc2();
object ifuncall();
object ifuncall1();
object ifuncall2();
object symbol_name();
@s]
****Change:(orig (462 462 a))
@s[double object_to_double();
@s|double object_to_double();
char *object_to_string();
@s]
****Change:(orig (468 468 a))
@s[double sin(), cos(), tan();
@s|double sin(), cos(), tan();
object read_byte1(),read_char1();
#define fs_leader(ar,i) (((object *)((ar)->fs.fs_self))[-(i+1)])
#define RPAREN )
object make_list();
#ifdef HAVE_ALLOCA
#ifndef alloca
char *alloca();
#endif
char *alloca_val;
#define ALLOCA_CONS(n) (alloca_val=alloca((n)*sizeof(struct cons)))
#define ON_STACK_CONS(x,y) (alloca_val=alloca(sizeof(struct cons)), on_stack_cons(x,y))
#define ON_STACK_LIST on_stack_list
#define ON_STACK_LIST_VECTOR on_stack_list_vector
#define ON_STACK_MAKE_LIST on_stack_make_list
object on_stack_cons();
object on_stack_list();
object on_stack_list_vector();
object on_stack_make_list();
#else
#define ALLOCA_CONS(n) 0
#define ON_STACK_CONS(x,y) MMcons(x,y)
#define ON_STACK_LIST list
#define ON_STACK_LIST_VECTOR list_vector
#define ON_STACK_MAKE_LIST make_list
#endif
struct call_data { object fun;
int argd;};
struct call_data fcall;
object fcalln();
object list_vector();
object MVloc[10];
#define VARG(min,max) ((min) | (max << 8))
#define VFUN_NARGS fcall.argd
extern object Cstd_key_defaults[];
int vfun_wrong_number_of_args();
int eql(),equal(),eq();
object sublis1();
object LVformat(),LVerror();
#define EQ(x,y) ((x)==(y))
/* #include "../h/genpari.h"*/
typedef unsigned long *GEN;
GEN addii(),mulii(),mulsi(),powerii(),shifti(),stoi(),dvmdii(),subii();
int cmpii();
#define signe(x) (((GEN)(x))[1]>>24)
#define lg(x) (((GEN)(x))[0]&0xffff)
#define setlg(x,s) (((GEN)(x))[0]=(((GEN)(x))[0]&0xffff0000)+s)
#define lgef(x) (((GEN)(x))[1]&0xffff)
#define setlgef(x,s) (((GEN)(x))[1]=(((GEN)(x))[1]&0xffff0000)+s)
int in_saved_avma ;
#define ulong unsigned long
/* #define DEBUG_AVMA */
#ifdef DEBUG_AVMA
#define save_avma long lvma = (in_saved_avma = 1, avma)
#define restore_avma avma = (in_saved_avma = 0, lvma)
#else
#define save_avma long lvma = avma
#define restore_avma avma = lvma
#endif
unsigned long avma;
GEN gzero;
GEN icopy_x;
object make_integer();
/* copy x to y, increasing space by factor of 2 */
GEN otoi();
/*
object integ_temp;
#define otoi(x) (integ_temp = (x) , (type_of(integ_temp) == t_bignum \
? MP(integ_temp) :stoi(fix(integ_temp))))
*/
void isetq_fix();
#ifdef HAVE_ALLOCA
#define SETQ_II(var,alloc,val) \
do{GEN _xx =(val) ; \
int _n = replace_copy1(_xx,var); \
if(_n) var = replace_copy2(_xx,alloca(_n));}while(0)
#define SETQ_IO(var,alloc,val) {object _xx =(val) ; \
int _n = obj_replace_copy1(_xx,var); \
if(_n) var = obj_replace_copy2(_xx,alloca(_n));}
#define IDECL(a,b,c) ulong b[4];a =(b[0]=0x1010000 +4,b)
#else
GEN setq_io(),setq_ii();
#define SETQ_IO(x,alloc,val) (x)=setq_io(x,&alloc,val)
#define SETQ_II(x,alloc,val) (x)=setq_ii(x,&alloc,val)
#define IDECL(a,b,c) ulong b[4];a =(b[0]=0x1010000 +4,b);object c
#endif
#ifdef __GNUC__
#define alloca __builtin_alloca
#endif
@s]
These are the contents of the former NiCE NeXT User Group NeXTSTEP/OpenStep software archive, currently hosted by Netfuture.ch.