Changeset 68 in dev for BasicCompiler_Common
- Timestamp:
- Mar 12, 2007, 4:04:55 AM (18 years ago)
- Location:
- BasicCompiler_Common
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
BasicCompiler_Common/Class.cpp
r67 r68 372 372 //※オーバーライドされた関数を先にサーチする必要があるため、バックサーチを行う 373 373 for( int i=(int)methods.size()-1; i>=0; i-- ){ 374 char *temp;375 temp=methods[i]->psi->name;374 SUBINFO *psi = methods[i]->psi; 375 char *temp = psi->name; 376 376 if(temp[0]==1&&temp[1]==ESC_OPERATOR){ 377 377 if((BYTE)temp[2]==idOperatorCalc){ 378 subs.push_back( methods[i]->psi );378 subs.push_back( psi ); 379 379 } 380 380 } -
BasicCompiler_Common/NumOpe_GetType.cpp
r67 r68 376 376 if(pBaseType){ 377 377 if(pBaseType->type==DEF_OBJECT){ 378 if(IsStringSubsituation(pBaseType->u.pobj_Class) 379 || IsStringObjectType(*pBaseType)){ 378 if(IsStringObjectType(*pBaseType)){ 380 379 //要求タイプがオブジェクトであり、Stringの受け入れが可能な場合 381 380 extern CClass *pobj_StringClass; … … 513 512 ////////// 514 513 515 type[sp]=i2; 514 if(i2&FLAG_PTR){ 515 //配列ポインタ 516 type[sp]=GetPtrType(i2^FLAG_PTR,index_stack[sp]); 517 } 518 else{ 519 type[sp]=i2; 520 } 521 516 522 bLiteralCalculation=0; 517 523 sp++; -
BasicCompiler_Common/Variable.cpp
r67 r68 211 211 212 212 //文字型 213 else if( lstrcmpi( TypeName, "Char" ) == 0 ) return DEF_CHAR;213 //else if( lstrcmpi( TypeName, "Char" ) == 0 ) return DEF_CHAR; 214 214 215 215 //bool型 … … 290 290 291 291 //文字型 292 else if(type==DEF_CHAR) lstrcpy(name,"Char");292 //else if(type==DEF_CHAR) lstrcpy(name,"Char"); 293 293 294 294 //bool型 -
BasicCompiler_Common/preprocessor.cpp
r67 r68 84 84 } 85 85 86 // TODO: 削除 87 add( "__STRING_IS_NOT_ALWAYS_UNICODE" ); 88 86 89 char temporary[255]; 87 90 sprintf(temporary,"_AB_VER%d",MAJOR_VER); … … 166 169 } 167 170 168 void preprocessor_ifdef(char *buffer, BOOL bndef){171 void preprocessor_ifdef(char *buffer,bool isNot){ 169 172 int i,i2,i3; 170 173 char temporary[VN_SIZE]; 171 174 172 if( bndef) i=lstrlen("#ifndef");175 if(isNot) i=lstrlen("#ifndef"); 173 176 else i=lstrlen("#ifdef"); 174 177 while(buffer[i]==' '||buffer[i]=='\t') i++; … … 185 188 if(pobj_define->check(temporary)) sw=1; 186 189 187 if( bndef){190 if(isNot){ 188 191 //#ifndefのとき(反対にする) 189 192 if(sw) sw=0; … … 357 360 } 358 361 else if(_memicmp(buffer+i,"#ifdef",6)==0){ 359 preprocessor_ifdef(buffer+i, 0);362 preprocessor_ifdef(buffer+i,false); 360 363 continue; 361 364 } 362 365 else if(_memicmp(buffer+i,"#ifndef",7)==0){ 363 preprocessor_ifdef(buffer+i, 1);366 preprocessor_ifdef(buffer+i,true); 364 367 continue; 365 368 }
Note:
See TracChangeset
for help on using the changeset viewer.