=================================================================== RCS file: /home/cvs/OpenXM/src/kan96xx/Kan/global.c,v retrieving revision 1.15 retrieving revision 1.38 diff -u -p -r1.15 -r1.38 --- OpenXM/src/kan96xx/Kan/global.c 2001/05/04 01:06:23 1.15 +++ OpenXM/src/kan96xx/Kan/global.c 2020/10/06 11:33:46 1.38 @@ -1,10 +1,12 @@ -/* global.c $OpenXM: OpenXM/src/kan96xx/Kan/global.c,v 1.14 2000/12/03 07:29:38 takayama Exp $ */ +/* global.c $OpenXM: OpenXM/src/kan96xx/Kan/global.c,v 1.37 2015/09/29 01:52:14 takayama Exp $ */ #include #include #include "datatype.h" #include "stackm.h" #include "lookup.h" +void hashInitialize(struct dictionary *dic); /* declared in extern.h */ +void initClassDataBase(void); /*-------- variables to define a ring ----------------*/ /* The numbers L,M, LL,MM,NN are set in setUpRing() in setupring.c now. @@ -79,6 +81,7 @@ int Commutative = 0; int UseCriterion1 = 0; int UseCriterion2B = 0; int OutputStyle = '*'; +int COutput = 0; /* C sytle output of polynomial */ int Wrap = 0; /* output.c */ int Verbose = 0; int ReduceLowerTerms = 1; @@ -103,6 +106,15 @@ int CmoDMSOutputOption = 0; /* Output with (1) RING_BY_NAME or (0) DMS_OF_N_VARIABLES. plugin/cmo.c */ int SecureMode = 0; +int RestrictedMode = 0; +int RestrictedMode_saved = 0; +int Ecart = 0; +int EcartAutomaticHomogenization = 0; +int TraceLift = 0; +struct ring *TraceLift_ringmod = NULL; +int DoCancel = 0; +int QuoteMode = 0; +int UseDsmall = 0; /* global variables for stackmachine.c */ int VerboseStack = 1; /* 0 is quiet, 1 is standard, 2 ... */ @@ -116,8 +128,12 @@ FILE *Fstack = NULL; /* Initialized to standard output /* in case of Solaris, use the following: */ int EnvOfStackMachine[2000]; #else +#if defined(__CYGIWN__) +sigjmp_buf EnvOfStackMachine; +#else jmp_buf EnvOfStackMachine; #endif +#endif struct object NullObject; struct object NoObject; @@ -127,7 +143,7 @@ int Lookup[TYPES][TYPES]; int Quiet = 0; int TimerOn = 0; -char *VersionString = "3.001203"; +char *VersionString = "3.050615"; char *LeftBracket = NULL; char *RightBracket = NULL; @@ -144,9 +160,11 @@ int VerboseK = 1; /* 1 is standard */ int DebugK = 0; FILE *Fk = NULL; /* Initialized to stdout in stackmachine_init() */ -stackmachine_init() { +void stackmachine_init() { int i,j; extern FILE *BaseFp; + /* GC_init(); */ + GC_INIT(); OxSystemVersion = VersionString; Fstack = stdout; /* initialize output stream */ Fk = stdout; @@ -155,9 +173,11 @@ stackmachine_init() { /* initialize null object */ NullObject.tag = 0; NullObject.lc.op = NullObject.rc.op = (struct object *)NULL; + NullObject.attr = (struct object *)NULL; /* findUserdictionary returns NoObject if it cannot find the key.*/ NoObject.tag = -1; NoObject.lc.op = NoObject.rc.op = (struct object *)NULL; + NoObject.attr = (struct object *)NULL; /* Initalize lookup table */ for (i=0; i