Changeset 183 in dev for trunk/abdev/BasicCompiler32/Compile_Calc.cpp
- Timestamp:
- Jun 24, 2007, 6:50:40 PM (17 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/abdev/BasicCompiler32/Compile_Calc.cpp
r179 r183 1 #include <jenga/include/smoothie/Smoothie.h> 2 #include <jenga/include/smoothie/LexicalAnalysis.h> 3 1 4 #include "../BasicCompiler_Common/common.h" 2 5 #include "Opcode.h" … … 78 81 //符号あり 79 82 80 if(OldType==DEF_INTEGER || ( isUnicode&&OldType==DEF_CHAR)){83 if(OldType==DEF_INTEGER || (Smoothie::IsUnicode()&&OldType==DEF_CHAR)){ 81 84 //pop eax 82 85 op_pop(REG_EAX); … … 90 93 op_push(REG_EAX); 91 94 } 92 else if(OldType==DEF_SBYTE || ( isUnicode==false&&OldType==DEF_CHAR)){95 else if(OldType==DEF_SBYTE || (Smoothie::IsUnicode()==false&&OldType==DEF_CHAR)){ 93 96 //pop eax 94 97 op_pop(REG_EAX); … … 170 173 //符号あり 171 174 172 if(OldType==DEF_INTEGER || ( isUnicode&&OldType==DEF_CHAR)){175 if(OldType==DEF_INTEGER || (Smoothie::IsUnicode()&&OldType==DEF_CHAR)){ 173 176 //pop eax 174 177 op_pop(REG_EAX); … … 182 185 op_push(REG_EAX); 183 186 } 184 else if(OldType==DEF_SBYTE || ( isUnicode==false&&OldType==DEF_CHAR)){187 else if(OldType==DEF_SBYTE || (Smoothie::IsUnicode()==false&&OldType==DEF_CHAR)){ 185 188 //pop eax 186 189 op_pop(REG_EAX); … … 304 307 if(OldType==DEF_BOOLEAN|| 305 308 OldType==DEF_BYTE|| 306 OldType==DEF_WORD||OldType==DEF_INTEGER || ( isUnicode&&OldType==DEF_CHAR)) return;307 else if(OldType==DEF_SBYTE || ( isUnicode==false&&OldType==DEF_CHAR)){309 OldType==DEF_WORD||OldType==DEF_INTEGER || (Smoothie::IsUnicode()&&OldType==DEF_CHAR)) return; 310 else if(OldType==DEF_SBYTE || (Smoothie::IsUnicode()==false&&OldType==DEF_CHAR)){ 308 311 //pop eax 309 312 op_pop(REG_EAX); … … 334 337 void ChangeTypeToByte(int OldType){ 335 338 //現在のスタックの内容をbyte型に変換する 336 if(OldType==DEF_BYTE||OldType==DEF_SBYTE || ( isUnicode==false&&OldType==DEF_CHAR)) return;339 if(OldType==DEF_BYTE||OldType==DEF_SBYTE || (Smoothie::IsUnicode()==false&&OldType==DEF_CHAR)) return; 337 340 338 341 ChangeTypeToLong(OldType); … … 619 622 620 623 621 if( varType.IsObject() && Smoothie:: meta.blittableTypes.IsExist( calcType ) ){624 if( varType.IsObject() && Smoothie::GetMeta().blittableTypes.IsExist( calcType ) ){ 622 625 // Blittable型をオブジェクトとして扱う 623 626 vector<UserProc *> userProcs; 624 Smoothie:: meta.blittableTypes.GetClass( calcType ).GetStaticMethods().Enum( "_Create", userProcs );627 Smoothie::GetMeta().blittableTypes.GetClass( calcType ).GetStaticMethods().Enum( "_Create", userProcs ); 625 628 if( userProcs.size() != 1 ){ 626 629 SetError();
Note:
See TracChangeset
for help on using the changeset viewer.