Changeset 42de40f in git
- Timestamp:
- Jun 13, 2016, 5:46:01 PM (8 years ago)
- Branches:
- (u'spielwiese', 'fe61d9c35bf7c61f2b6cbf1b56e25e2f08d536cc')
- Children:
- 4811126f4f83e53adaae9f7a482ce75cecd9ce48
- Parents:
- bceb6396397f37319656d25f7bd1d97e4d07cc66
- Location:
- Singular
- Files:
-
- 6 edited
Legend:
- Unmodified
- Added
- Removed
-
Singular/grammar.cc
rbceb63 r42de40f 3957 3957 #endif 3958 3958 } 3959 #ifdef USE_IILOCALRING3960 3959 iiLocalRing[myynest-1]=IDRING(h); 3961 #endif3962 3960 procstack->cRing=IDRING(h); 3963 3961 procstack->cRingHdl=h; -
Singular/grammar.y
rbceb63 r42de40f 1379 1379 #endif 1380 1380 } 1381 #ifdef USE_IILOCALRING1382 1381 iiLocalRing[myynest-1]=IDRING(h); 1383 #endif1384 1382 procstack->cRing=IDRING(h); 1385 1383 procstack->cRingHdl=h; -
Singular/iplib.cc
rbceb63 r42de40f 419 419 err=iiAllStart(pi,pi->data.s.body,BT_proc,pi->data.s.body_lineno-(v!=NULL)); 420 420 421 #ifdef USE_IILOCALRING422 421 #if 0 423 422 if(procstack->cRing != iiLocalRing[myynest]) Print("iiMake_proc: 1 ring not saved procs:%x, iiLocal:%x\n",procstack->cRing, iiLocalRing[myynest]); … … 456 455 iiLocalRing[myynest-1]=NULL; 457 456 } 458 #else /* USE_IILOCALRING */459 if (procstack->cRing != currRing)460 {461 //if (procstack->cRingHdl!=NULL)462 //Print("procstack:%s,",IDID(procstack->cRingHdl));463 //if (currRingHdl!=NULL)464 //Print(" curr:%s\n",IDID(currRingHdl));465 //Print("pr:%x, curr: %x\n",procstack->cRing,currRing);466 if (iiRETURNEXPR.RingDependend())467 {468 //idhdl hn;469 const char *n;470 const char *o;471 if (procstack->cRing!=NULL)472 {473 //PrintS("reset ring\n");474 procstack->cRingHdl=rFindHdl(procstack->cRing,NULL);475 o=IDID(procstack->cRingHdl);476 currRing=procstack->cRing;477 currRingHdl=procstack->cRingHdl;478 }479 else o="none";480 if (currRing!=NULL) n=IDID(currRingHdl);481 else n="none";482 if (currRing==NULL)483 {484 Werror("ring change during procedure call: %s -> %s (level %d)",o,n,myynest);485 iiRETURNEXPR.CleanUp();486 err=TRUE;487 }488 }489 if (procstack->cRingHdl!=NULL)490 {491 rSetHdl(procstack->cRingHdl);492 }493 else494 { currRingHdl=NULL; currRing=NULL; }495 }496 #endif /* USE_IILOCALRING */497 457 //Print("kill locals for %s (level %d)\n",IDID(pn),myynest); 498 458 killlocals(myynest); … … 512 472 } 513 473 514 #ifdef USE_IILOCALRING515 474 ring *iiLocalRing; 516 #endif517 475 sleftv iiRETURNEXPR; 518 476 int iiRETURNEXPR_len=0; … … 522 480 { 523 481 int i; 524 #ifdef USE_IILOCALRING525 482 for (i=0;i<=myynest;i++) 526 483 { … … 530 487 PrintLn(); 531 488 } 532 #endif533 489 #if 0 534 490 i=myynest; … … 552 508 if (myynest >= iiRETURNEXPR_len-1) 553 509 { 554 #ifdef USE_IILOCALRING555 510 iiLocalRing=(ring *)omreallocSize(iiLocalRing, 556 511 iiRETURNEXPR_len*sizeof(ring), 557 512 (iiRETURNEXPR_len+16)*sizeof(ring)); 558 513 memset(&(iiLocalRing[iiRETURNEXPR_len]),0,16*sizeof(ring)); 559 #endif560 514 iiRETURNEXPR_len+=16; 561 515 } … … 572 526 } 573 527 iiCheckNest(); 574 #ifdef USE_IILOCALRING575 528 iiLocalRing[myynest]=currRing; 576 529 //Print("currRing(%d):%s(%x) in %s\n",myynest,IDID(currRingHdl),currRing,IDID(pn)); 577 #endif578 530 iiRETURNEXPR.Init(); 579 531 procstack->push(pi->procname); … … 660 612 iiCheckNest(); 661 613 procstack->push(example); 662 #ifdef USE_IILOCALRING663 614 iiLocalRing[myynest]=currRing; 664 #endif665 615 if (traceit&TRACE_SHOW_PROC) 666 616 { … … 680 630 printf("leaving -example- (level %d)\n",myynest); 681 631 } 682 #ifdef USE_IILOCALRING683 632 if (iiLocalRing[myynest] != currRing) 684 633 { … … 694 643 } 695 644 } 696 #else /* USE_IILOCALRING */697 #endif /* USE_IILOCALRING */698 645 if (NS_LRING != currRing) 699 646 { … … 711 658 } 712 659 } 713 //#endif /* USE_IILOCALRING */714 660 procstack->pop(); 715 661 return err; -
Singular/ipshell.cc
rbceb63 r42de40f 1326 1326 Warn("redefining %s (%s)",IDID(h),my_yylinebuf); 1327 1327 } 1328 #ifdef USE_IILOCALRING1329 1328 if (iiLocalRing[0]==IDRING(h) && (!keepring)) iiLocalRing[0]=NULL; 1330 #else1331 proclevel *p=procstack;1332 while (p->next!=NULL) p=p->next;1333 if ((p->cRing==IDRING(h)) && (!keepring))1334 {1335 p->cRing=NULL;1336 p->cRingHdl=NULL;1337 }1338 #endif1339 1329 killhdl2(h,root,currRing); 1340 1330 } … … 6074 6064 } 6075 6065 int j; 6076 #ifdef USE_IILOCALRING6077 6066 for (j=0;j<myynest;j++) 6078 6067 { … … 6083 6072 } 6084 6073 } 6085 #else /* USE_IILOCALRING */6086 //#endif /* USE_IILOCALRING */6087 {6088 proclevel * nshdl = procstack;6089 int lev=myynest-1;6090 6091 for(; nshdl != NULL; nshdl = nshdl->next)6092 {6093 if (nshdl->cRing==r)6094 {6095 Warn("killing the basering for level %d",lev);6096 nshdl->cRing=NULL;6097 nshdl->cRingHdl=NULL;6098 }6099 }6100 }6101 #endif /* USE_IILOCALRING */6102 6074 // any variables depending on r ? 6103 6075 while (r->idroot!=NULL) … … 6158 6130 idhdl rSimpleFindHdl(ring r, idhdl root, idhdl n) 6159 6131 { 6160 //idhdl next_best=NULL;6161 6132 idhdl h=root; 6162 6133 while (h!=NULL) … … 6167 6138 ) 6168 6139 { 6169 // if (IDLEV(h)==myynest)6170 // return h;6171 // if ((IDLEV(h)==0) || (next_best==NULL))6172 // next_best=h;6173 // else if (IDLEV(next_best)<IDLEV(h))6174 // next_best=h;6175 6140 return h; 6176 6141 } 6177 6142 h=IDNEXT(h); 6178 6143 } 6179 //return next_best;6180 6144 return NULL; 6181 6145 } -
Singular/ipshell.h
rbceb63 r42de40f 33 33 extern int iiRETURNEXPR_len; 34 34 extern sleftv iiRETURNEXPR; 35 #ifdef USE_IILOCALRING36 35 extern ring *iiLocalRing; 37 #endif38 36 //extern cmdnames cmds[]; 39 37 extern const char *lastreserved; -
Singular/tok.h
rbceb63 r42de40f 18 18 extern int yyparse(void); 19 19 #endif 20 21 /* Define to use old mechanismen for saving currRing with procedures22 */23 #define USE_IILOCALRING 124 25 20 26 21 /* the follwing defines for infix operators should not be changed: *
Note: See TracChangeset
for help on using the changeset viewer.