Changeset 5edb77 in git
- Timestamp:
- Nov 20, 2012, 7:16:16 PM (10 years ago)
- Branches:
- (u'jengelh-datetime', 'ceac47cbc86fe4a15902392bdbb9bd2ae0ea02c6')(u'spielwiese', 'a800fe4b3e9d37a38c5a10cc0ae9dfa0c15a4ee6')
- Children:
- e3b071b7b8022789a70d9aeead7d9b8159679c57
- Parents:
- 8e51caea071beef6e0f3c31472a9553c63c8df6d
- Location:
- Singular
- Files:
-
- 5 edited
Legend:
- Unmodified
- Added
- Removed
-
Singular/iparith.cc
r8e51ca r5edb77 1557 1557 int typ; 1558 1558 BOOLEAN t=FALSE; 1559 idhdl tmp_proc=NULL; 1559 1560 if ((u->rtyp!=IDHDL)||(u->e!=NULL)) 1560 1561 { 1561 idrec tmp_proc;1562 tmp_proc .id="_auto";1563 tmp_proc .typ=PROC_CMD;1564 tmp_proc .data.pinf=(procinfo *)u->Data();1565 tmp_proc .ref=1;1566 d=u->data; u->data=(void *) &tmp_proc;1562 tmp_proc=(idhdl)omAlloc0(sizeof(idrec)); 1563 tmp_proc->id="_auto"; 1564 tmp_proc->typ=PROC_CMD; 1565 tmp_proc->data.pinf=(procinfo *)u->Data(); 1566 tmp_proc->ref=1; 1567 d=u->data; u->data=(void *)tmp_proc; 1567 1568 e=u->e; u->e=NULL; 1568 1569 t=TRUE; 1569 1570 typ=u->rtyp; u->rtyp=IDHDL; 1570 1571 } 1571 leftvsl;1572 BOOLEAN sl; 1572 1573 if (u->req_packhdl==currPack) 1573 1574 sl = iiMake_proc((idhdl)u->data,NULL,v); … … 1579 1580 u->data=d; 1580 1581 u->e=e; 1581 } 1582 if (sl==NULL) 1583 { 1584 return TRUE; 1585 } 1586 else 1587 { 1588 memcpy(res,&iiRETURNEXPR,sizeof(sleftv)); 1589 } 1582 omFreeSize(tmp_proc,sizeof(idrec)); 1583 } 1584 if (sl) return TRUE; 1585 memcpy(res,&iiRETURNEXPR,sizeof(sleftv)); 1590 1586 iiRETURNEXPR.Init(); 1591 1587 return FALSE; -
Singular/iplib.cc
r8e51ca r5edb77 426 426 } 427 427 } 428 sleftv *iiMake_proc(idhdl pn, package pack, sleftv* sl)428 BOOLEAN iiMake_proc(idhdl pn, package pack, sleftv* sl) 429 429 { 430 430 int err; … … 434 434 Werror("'%s::%s()' is a local procedure and cannot be accessed by an user.", 435 435 pi->libname, pi->procname); 436 return NULL;436 return TRUE; 437 437 } 438 438 iiCheckNest(); … … 601 601 procstack->pop(); 602 602 if (err) 603 return NULL;604 return &iiRETURNEXPR;603 return TRUE; 604 return FALSE; 605 605 } 606 606 -
Singular/ipshell.h
r8e51ca r5edb77 192 192 int iiDeclCommand(leftv sy, leftv name, int lev, int t, idhdl* root, 193 193 BOOLEAN isring = FALSE, BOOLEAN init_b=TRUE); 194 sleftv *iiMake_proc(idhdl pn, package pack, sleftv* sl);194 BOOLEAN iiMake_proc(idhdl pn, package pack, sleftv* sl); 195 195 // from misc.cc: 196 196 char * showOption(); -
Singular/newstruct.cc
r8e51ca r5edb77 57 57 if (p!=NULL) 58 58 { 59 leftvsl;59 BOOLEAN sl; 60 60 sleftv tmp; 61 61 memset(&tmp,0,sizeof(tmp)); … … 70 70 sl=iiMake_proc(&hh,NULL,&tmp); 71 71 72 if (sl ->Typ() == STRING_CMD)73 { 74 char *res = omStrDup((char*) sl->Data());75 sl->CleanUp();72 if (sl&& (iiRETURNEXPR.Typ() == STRING_CMD)) 73 { 74 char *res = omStrDup((char*)iiRETURNEXPR.Data()); 75 iiRETURNEXPR.CleanUp(); 76 76 iiRETURNEXPR.Init(); 77 77 return res; 78 78 } 79 sl->CleanUp();79 iiRETURNEXPR.CleanUp(); 80 80 iiRETURNEXPR.Init(); 81 81 } … … 177 177 if (p!=NULL) 178 178 { 179 BOOLEAN sl; 179 180 idrec hh; 180 181 memset(&hh,0,sizeof(hh)); … … 185 186 memset(&tmp,0,sizeof(sleftv)); 186 187 tmp.Copy(r); 187 leftvsl = iiMake_proc(&hh, NULL, &tmp);188 if ( sl != NULL)189 { 190 if ( sl->Typ() == op)191 { 192 l->Copy( sl);188 sl = iiMake_proc(&hh, NULL, &tmp); 189 if (!sl) 190 { 191 if (iiRETURNEXPR.Typ() == op) 192 { 193 l->Copy(&iiRETURNEXPR); 193 194 iiRETURNEXPR.Init(); 194 195 return FALSE; 195 196 } 196 sl->CleanUp();197 iiRETURNEXPR.CleanUp(); 197 198 iiRETURNEXPR.Init(); 198 199 } … … 258 259 } 259 260 260 else if(l->Typ() > MAX_TOK)261 else 261 262 { 262 263 assume(l->Typ() > MAX_TOK); … … 280 281 if (p!=NULL) 281 282 { 282 leftvsl;283 BOOLEAN sl; 283 284 sleftv tmp; 284 285 memset(&tmp,0,sizeof(sleftv)); … … 290 291 hh.data.pinf=p->p; 291 292 sl=iiMake_proc(&hh,NULL,&tmp); 292 if (sl ==NULL) return TRUE;293 if (sl) return TRUE; 293 294 else 294 295 { 295 res->Copy( sl);296 res->Copy(&iiRETURNEXPR); 296 297 iiRETURNEXPR.Init(); 297 298 return FALSE; … … 409 410 if (p!=NULL) 410 411 { 411 leftvsl;412 BOOLEAN sl; 412 413 sleftv tmp; 413 414 memset(&tmp,0,sizeof(sleftv)); … … 421 422 hh.data.pinf=p->p; 422 423 sl=iiMake_proc(&hh,NULL,&tmp); 423 if (sl ==NULL) return TRUE;424 if (sl) return TRUE; 424 425 else 425 426 { 426 res->Copy( sl);427 res->Copy(&iiRETURNEXPR); 427 428 iiRETURNEXPR.Init(); 428 429 return FALSE; … … 455 456 if (p!=NULL) 456 457 { 457 leftvsl;458 BOOLEAN sl; 458 459 sleftv tmp; 459 460 memset(&tmp,0,sizeof(sleftv)); … … 465 466 hh.data.pinf=p->p; 466 467 sl=iiMake_proc(&hh,NULL,&tmp); 467 if (sl ==NULL) return TRUE;468 if (sl) return TRUE; 468 469 else 469 470 { 470 res->Copy( sl);471 res->Copy(&iiRETURNEXPR); 471 472 iiRETURNEXPR.Init(); 472 473 return FALSE; … … 593 594 if (p!=NULL) 594 595 { 595 leftvsl;596 BOOLEAN sl; 596 597 sleftv tmp; 597 598 memset(&tmp,0,sizeof(tmp)); … … 604 605 hh.data.pinf=p->p; 605 606 sl=iiMake_proc(&hh,NULL,&tmp); 606 if ( sl!=NULL) sl->CleanUp();607 if (!sl) iiRETURNEXPR.CleanUp(); 607 608 iiRETURNEXPR.Init(); 608 609 } … … 745 746 return scanNewstructFromString(s,res); 746 747 } 747 748 748 void newstructShow(newstruct_desc d) 749 749 { -
Singular/subexpr.cc
r8e51ca r5edb77 1647 1647 if(!nok) 1648 1648 { 1649 leftv r=iiMake_proc(h,req_packhdl,&d->arg2); 1650 if (r!=NULL) 1651 memcpy(this,r,sizeof(sleftv)); 1652 else 1653 nok=TRUE; 1649 nok=iiMake_proc(h,req_packhdl,&d->arg2); 1650 if (!nok) 1651 memcpy(this,&iiRETURNEXPR,sizeof(sleftv)); 1654 1652 } 1655 1653 }
Note: See TracChangeset
for help on using the changeset viewer.