Changeset 465 in dev for trunk/ab5.0/abdev/BasicCompiler32/NumOpe.cpp
- Timestamp:
- Mar 24, 2008, 8:05:20 PM (17 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/ab5.0/abdev/BasicCompiler32/NumOpe.cpp
r461 r465 59 59 } 60 60 else{ 61 SetError();61 compiler.errorMessenger.OutputFatalError(); 62 62 } 63 63 } … … 79 79 void ExtendRegToBigType( int reg, int bigBasicType, int baseBasicType ){ 80 80 if( reg != REG_EAX ){ 81 SetError();81 compiler.errorMessenger.OutputFatalError(); 82 82 } 83 83 switch( Type::GetBasicSize( bigBasicType ) ){ … … 190 190 // オブジェクトメンバのポインタをeaxにコピー 191 191 if( !VarToReg( tempRelativeVar, baseType, resultType ) ){ 192 SetError(11,termFull,cp);192 compiler.errorMessenger.Output(11,termFull,cp); 193 193 } 194 194 … … 224 224 if( !leftType.IsStruct() ) 225 225 { 226 SetError();226 compiler.errorMessenger.OutputFatalError(); 227 227 } 228 228 … … 332 332 { 333 333 // 関数ポインタ 334 SetError();334 compiler.errorMessenger.OutputFatalError(); 335 335 336 336 /////////////////////////////////////////////////////////////////// … … 342 342 } 343 343 344 SetError();344 compiler.errorMessenger.OutputFatalError(); 345 345 346 346 return false; … … 400 400 if( isProcedureCallOnly ) 401 401 { 402 SetError(1,NULL,cp);402 compiler.errorMessenger.Output(1,NULL,cp); 403 403 } 404 404 return false; … … 432 432 if( compiler.pCompilingClass == NULL ) 433 433 { 434 SetError(142,NULL,cp);434 compiler.errorMessenger.Output(142,NULL,cp); 435 435 return false; 436 436 } … … 465 465 { 466 466 //閉じカッコ")"に続く文字がNULLでないとき 467 SetError(42,NULL,cp);467 compiler.errorMessenger.Output(42,NULL,cp); 468 468 } 469 469 … … 525 525 526 526 //閉じカッコ")"に続く文字がNULLでないときはエラーにする 527 if(termFull[i2+1+i4+1]!='\0') SetError(42,NULL,cp);527 if(termFull[i2+1+i4+1]!='\0') compiler.errorMessenger.Output(42,NULL,cp); 528 528 529 529 //マクロ関数の場合 … … 629 629 if( isProcedureCallOnly ) 630 630 { 631 SetError(3, termLeft, cp );631 compiler.errorMessenger.Output(3, termLeft, cp ); 632 632 } 633 633 … … 645 645 // 変数の場合はeaxに変数ポインタを格納する 646 646 if( !VarToReg( relativeVar, baseType, resultType ) ){ 647 SetError(11,term,cp);647 compiler.errorMessenger.Output(11,term,cp); 648 648 } 649 649 } … … 658 658 if( !isVariable ) 659 659 { 660 SetError();660 compiler.errorMessenger.OutputFatalError(); 661 661 } 662 662 … … 678 678 if( reg != REG_EAX ){ 679 679 // TODO: 未実装 680 SetError();680 compiler.errorMessenger.OutputFatalError(); 681 681 } 682 682 … … 708 708 709 709 if(expression[0]=='\0'){ 710 SetError(1,NULL,cp);710 compiler.errorMessenger.Output(1,NULL,cp); 711 711 return false; 712 712 } … … 863 863 else GetCalcName(idCalc,temp2); 864 864 sprintf(temporary,"Operator %s",temp2); 865 SetError(27,temporary,cp);865 compiler.errorMessenger.Output(27,temporary,cp); 866 866 goto error; 867 867 } … … 892 892 } 893 893 else{ 894 SetError(3, term, cp );894 compiler.errorMessenger.Output(3, term, cp ); 895 895 goto error; 896 896 } … … 918 918 // 拡張版リテラル文字列(エスケープシーケンス可能) 919 919 if(!RemoveStringQuotes(term+2)){ 920 SetError(43,NULL,cp);920 compiler.errorMessenger.Output(43,NULL,cp); 921 921 goto error; 922 922 } … … 928 928 // 通常文字列 929 929 if(!RemoveStringQuotes(term)){ 930 SetError(43,NULL,cp);930 compiler.errorMessenger.Output(43,NULL,cp); 931 931 goto error; 932 932 } … … 976 976 } 977 977 } 978 SetError(38,term,cp);978 compiler.errorMessenger.Output(38,term,cp); 979 979 980 980 goto error; … … 990 990 if( resultType.GetBasicType() & FLAG_CAST ){ 991 991 // 型名のみ 992 SetError();992 compiler.errorMessenger.OutputFatalError(); 993 993 } 994 994 else{ … … 1087 1087 } 1088 1088 else{ 1089 SetError(300,NULL,cp);1089 compiler.errorMessenger.Output(300,NULL,cp); 1090 1090 goto error; 1091 1091 } … … 1095 1095 //該当する識別子が見当たらないときはエラー扱いにする 1096 1096 bError=1; 1097 SetError(3,term,cp);1097 compiler.errorMessenger.Output(3,term,cp); 1098 1098 type_stack[sp]=DEF_DOUBLE; 1099 1099 } … … 1243 1243 if( PTR_LEVEL( type_stack[sp-1] ) <= 0 ){ 1244 1244 //ポインタ型ではないとき 1245 SetError( 3, NULL, cp );1245 compiler.errorMessenger.Output( 3, NULL, cp ); 1246 1246 goto error; 1247 1247 } … … 1252 1252 1253 1253 default: 1254 SetError(300,NULL,cp);1254 compiler.errorMessenger.Output(300,NULL,cp); 1255 1255 goto error; 1256 1256 } … … 1260 1260 1261 1261 if(sp!=1){ 1262 SetError(1,NULL,cp);1262 compiler.errorMessenger.Output(1,NULL,cp); 1263 1263 goto error; 1264 1264 } … … 1266 1266 if(bLiteralCalculation){ 1267 1267 //右辺値が数値の定数式の場合 1268 SetError();1268 compiler.errorMessenger.OutputFatalError(); 1269 1269 } 1270 1270 else{
Note:
See TracChangeset
for help on using the changeset viewer.