Changeset 64d729 in git for Singular/iplib.cc
- Timestamp:
- Apr 15, 1999, 7:28:06 PM (25 years ago)
- Branches:
- (u'spielwiese', 'fe61d9c35bf7c61f2b6cbf1b56e25e2f08d536cc')
- Children:
- dd9b83cb6123e79d811d45dd8b7d79c748f994e6
- Parents:
- 1518b9cf23aa2598228863099857cedec82668c2
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
Singular/iplib.cc
r1518b9 r64d729 2 2 * Computer Algebra System SINGULAR * 3 3 ****************************************/ 4 /* $Id: iplib.cc,v 1.5 3 1999-04-01 10:09:58 krueger Exp $ */4 /* $Id: iplib.cc,v 1.54 1999-04-15 17:28:04 Singular Exp $ */ 5 5 /* 6 6 * ABSTRACT: interpreter: LIB and help … … 245 245 BOOLEAN err=FALSE; 246 246 int old_echo=si_echo; 247 char save_flags=0; 248 procinfov pi=NULL; 247 249 248 250 /* init febase ======================================== */ … … 250 252 if (pn!=NULL) 251 253 { 252 procinfov pi;253 254 pi = IDPROC(pn); 254 255 if(pi!=NULL) 255 256 { 257 save_flags=pi->trace_flag; 256 258 if( pi->data.s.body==NULL ) 257 259 { 258 iiGetLibProcBuffer( IDPROC(pn));259 if ( IDPROC(pn)->data.s.body==NULL) return TRUE;260 iiGetLibProcBuffer(pi); 261 if (pi->data.s.body==NULL) return TRUE; 260 262 } 261 newBuffer( mstrdup(IDPROC(pn)->data.s.body), BT_proc, 262 pi, IDPROC(pn)->data.s.body_lineno ); 263 } 264 //else 265 //{ // for security only 266 // newBuffer( mstrdup(IDSTRING(pn)), BT_proc, IDID(pn) ); 267 //} 263 newBuffer( mstrdup(pi->data.s.body), BT_proc, 264 pi, pi->data.s.body_lineno-(v!=NULL) ); 265 } 268 266 } 269 267 /* generate argument list ======================================*/ … … 280 278 /* start interpreter ======================================*/ 281 279 myynest++; 282 //Print("%-*.*s PStart <<%s>>, level:%d\n",2*myynest,2*myynest," ",IDID(pn),myynest);283 280 err=yyparse(); 284 281 killlocals(myynest); 285 282 myynest--; 286 283 si_echo=old_echo; 287 //Print("%-*.*s PEnd <<%s>>, level:%d\n",2*myynest,2*myynest," ",IDID(pn),myynest);288 284 if (pi!=NULL) 285 pi->trace_flag=save_flags; 289 286 return err; 290 287 } … … 628 625 char libnamebuf[128]; 629 626 package pack = IDPACKAGE(packhdl); 630 627 631 628 if(pack->language == LANG_NONE) return FALSE; 632 629 633 630 FILE * fp = feFopen( pack->libname, "r", libnamebuf, FALSE); 634 631 if (fp==NULL) … … 766 763 LoadResult = iiLoadLIB(fp, libnamebuf, newlib, NULL, FALSE, tellerror); 767 764 #endif /* HAVE_NAMESPACES */ 768 765 769 766 #ifdef HAVE_NAMESPACES 770 767 if(!LoadResult) IDPACKAGE(pl)->loaded = TRUE; … … 836 833 fclose( yylpin ); 837 834 fp = NULL; 838 835 839 836 #ifdef HAVE_NAMESPACES 840 837 namespaceroot->pop(); … … 940 937 int token; 941 938 char FullName[256]; 942 939 943 940 if( *fullname != '/' && *fullname != '.' ) 944 941 sprintf(FullName, "./%s", newlib); 945 942 else strcpy(FullName, fullname); 946 943 947 944 948 945 if(IsCmd(plib, &token)) … … 965 962 { 966 963 Warn("not of typ package."); 967 goto load_modules_end; 964 goto load_modules_end; 968 965 } 969 966 } … … 974 971 WerrorS("dynl_open failed"); 975 972 Werror("%s not found", newlib); 976 goto load_modules_end; 973 goto load_modules_end; 977 974 } 978 975 else … … 988 985 namespaceroot->pop(); 989 986 return RET; 990 987 991 988 } 992 989 #endif /* HAVE_DYNAMIC_LOADING */ … … 1144 1141 FILE * fp = feFopen( newlib, "r", libnamebuf, FALSE ); 1145 1142 ret = stat(libnamebuf, &sb); 1146 1143 1147 1144 if (fp==NULL) 1148 1145 { … … 1174 1171 } 1175 1172 if(isprint(buf[0]) || buf[0]=='\n') { LT = LT_SINGULAR; goto lib_type_end; } 1176 1173 1177 1174 lib_type_end: 1178 1175 fclose(fp);
Note: See TracChangeset
for help on using the changeset viewer.