Changeset 261 in dev for trunk/abdev/BasicCompiler32


Ignore:
Timestamp:
Aug 3, 2007, 11:53:50 PM (17 years ago)
Author:
dai_9181
Message:
 
Location:
trunk/abdev/BasicCompiler32
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • trunk/abdev/BasicCompiler32/Compile_ProcOp.cpp

    r260 r261  
    403403
    404404    //ラベル管理オブジェクトを初期化
    405     extern Labels labels;
    406     labels.clear();
     405    compiler.codeGenerator.gotoLabels.clear();
    407406
    408407    //Gotoラベルスケジュール
  • trunk/abdev/BasicCompiler32/Compile_Statement.cpp

    r260 r261  
    279279
    280280int GetLabelAddress(char *LabelName,int LineNum){
    281     extern Labels labels;
    282 
    283281    if(LabelName){
    284         BOOST_FOREACH( const Label &label, labels )
     282        BOOST_FOREACH( const GotoLabel &label, compiler.codeGenerator.gotoLabels )
    285283        {
    286284            if( label.name.size() > 0 )
     
    294292    }
    295293    else{
    296         BOOST_FOREACH( const Label &label, labels )
     294        BOOST_FOREACH( const GotoLabel &label, compiler.codeGenerator.gotoLabels )
    297295        {
    298296            if( label.name.size() == 0 )
  • trunk/abdev/BasicCompiler32/MakePeHdr.cpp

    r260 r261  
    418418
    419419        //ラベル管理オブジェクトを初期化
    420         extern Labels labels;
    421         labels.clear();
     420        compiler.codeGenerator.gotoLabels.clear();
    422421
    423422        //Gotoラベルスケジュール
  • trunk/abdev/BasicCompiler32/Opcode.h

    r260 r261  
    1919#define breakpoint compiler.codeGenerator.PutOld( (char)0xCC );
    2020
    21 
    22 //ラベルアドレス
    23 class Label
    24 {
    25 public:
    26     std::string name;
    27     int line;
    28     DWORD address;
    29 
    30     Label( const std::string &name, long nativeCodePos )
    31         : name( name )
    32         , line( -1 )
    33         , address( nativeCodePos )
    34     {
    35     }
    36     Label( int line, long nativeCodePos )
    37         : name( "" )
    38         , line( line )
    39         , address( nativeCodePos )
    40     {
    41     }
    42 };
    43 typedef std::vector<Label> Labels;
    4421
    4522//プロシージャの種類
Note: See TracChangeset for help on using the changeset viewer.