Changeset 331 in dev for trunk/abdev/BasicCompiler_Common/NumOpe_GetType.cpp
- Timestamp:
- Sep 27, 2007, 1:47:46 AM (17 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/abdev/BasicCompiler_Common/NumOpe_GetType.cpp
r301 r331 301 301 } 302 302 303 bool GetTermType( const char *term, Type &resultType, bool &isLiteral, bool *pIsClassName )303 bool GetTermType( const char *term, const Type &baseType, Type &resultType, bool &isLiteral, bool *pIsClassName ) 304 304 { 305 305 char parameter[VN_SIZE]; … … 330 330 bool isClassName = false; 331 331 Type leftType; 332 if( GetTermType( termLeft, leftType, isLiteral, &isClassName ) ){332 if( GetTermType( termLeft, Type(), leftType, isLiteral, &isClassName ) ){ 333 333 if( isClassName == false && compiler.GetObjectModule().meta.GetBlittableTypes().IsExist( leftType ) ){ 334 334 // 左側のオブジェクト部分がBlittable型のとき … … 340 340 temporary ); 341 341 342 if( !GetTermType( termLeft, leftType, isLiteral, &isClassName ) ){342 if( !GetTermType( termLeft, Type(), leftType, isLiteral, &isClassName ) ){ 343 343 goto globalArea; 344 344 } … … 446 446 //////////////// 447 447 448 if( !CallProc(idProc,pProc,procName,parameter, resultType, false ) ){448 if( !CallProc(idProc,pProc,procName,parameter, baseType, resultType, false ) ){ 449 449 return false; 450 450 } … … 716 716 717 717 bool isLiteral = true; 718 if( GetTermType( term, resultType, isLiteral ) ){718 if( GetTermType( term, baseType, resultType, isLiteral ) ){ 719 719 type_stack[sp] = resultType.GetBasicType(); 720 720 index_stack[sp] = resultType.GetIndex();
Note:
See TracChangeset
for help on using the changeset viewer.