Ignore:
Timestamp:
Jun 24, 2007, 6:50:40 PM (17 years ago)
Author:
dai_9181
Message:
 
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
    14#include "../BasicCompiler_Common/common.h"
    25#include "Opcode.h"
     
    7881            //符号あり
    7982
    80             if(OldType==DEF_INTEGER || (isUnicode&&OldType==DEF_CHAR)){
     83            if(OldType==DEF_INTEGER || (Smoothie::IsUnicode()&&OldType==DEF_CHAR)){
    8184                //pop eax
    8285                op_pop(REG_EAX);
     
    9093                op_push(REG_EAX);
    9194            }
    92             else if(OldType==DEF_SBYTE || (isUnicode==false&&OldType==DEF_CHAR)){
     95            else if(OldType==DEF_SBYTE || (Smoothie::IsUnicode()==false&&OldType==DEF_CHAR)){
    9396                //pop eax
    9497                op_pop(REG_EAX);
     
    170173            //符号あり
    171174
    172             if(OldType==DEF_INTEGER || (isUnicode&&OldType==DEF_CHAR)){
     175            if(OldType==DEF_INTEGER || (Smoothie::IsUnicode()&&OldType==DEF_CHAR)){
    173176                //pop eax
    174177                op_pop(REG_EAX);
     
    182185                op_push(REG_EAX);
    183186            }
    184             else if(OldType==DEF_SBYTE || (isUnicode==false&&OldType==DEF_CHAR)){
     187            else if(OldType==DEF_SBYTE || (Smoothie::IsUnicode()==false&&OldType==DEF_CHAR)){
    185188                //pop eax
    186189                op_pop(REG_EAX);
     
    304307    if(OldType==DEF_BOOLEAN||
    305308        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)){
    308311        //pop eax
    309312        op_pop(REG_EAX);
     
    334337void ChangeTypeToByte(int OldType){
    335338    //現在のスタックの内容を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;
    337340
    338341    ChangeTypeToLong(OldType);
     
    619622
    620623
    621     if( varType.IsObject() && Smoothie::meta.blittableTypes.IsExist( calcType ) ){
     624    if( varType.IsObject() && Smoothie::GetMeta().blittableTypes.IsExist( calcType ) ){
    622625        // Blittable型をオブジェクトとして扱う
    623626        vector<UserProc *> userProcs;
    624         Smoothie::meta.blittableTypes.GetClass( calcType ).GetStaticMethods().Enum( "_Create", userProcs );
     627        Smoothie::GetMeta().blittableTypes.GetClass( calcType ).GetStaticMethods().Enum( "_Create", userProcs );
    625628        if( userProcs.size() != 1 ){
    626629            SetError();
Note: See TracChangeset for help on using the changeset viewer.