Changeset 15 in dev for BasicCompiler_Common/MakeExe.cpp


Ignore:
Timestamp:
Dec 11, 2006, 3:07:59 AM (17 years ago)
Author:
dai_9181
Message:

LexicalAnalysisを廃止。

File:
1 edited

Legend:

Unmodified
Added
Removed
  • BasicCompiler_Common/MakeExe.cpp

    r14 r15  
    3434}
    3535
     36void AddSourceCode(char *buffer){
     37    char *temp;
     38    temp=(char *)HeapAlloc(hHeap,0,lstrlen(buffer)+8192);
     39    lstrcpy(temp,buffer);
     40
     41    //エスケープシーケンス設定
     42    SetEscapeSequenceFormat(temp);
     43
     44    //コマンド対応
     45    ChangeCommandToCode(temp);
     46
     47    //新しいソースコードバッファの容量
     48    extern char *basbuf;
     49    int NewSize;
     50    NewSize=lstrlen(basbuf)+lstrlen(temp);
     51    NewSize*=2;
     52    NewSize+=255;
     53
     54    //最後尾に貼り付け
     55    extern char *pBaseBuffer;
     56    pBaseBuffer=(char *)HeapReAlloc(hHeap,0,pBaseBuffer,NewSize);
     57    basbuf=pBaseBuffer+2;
     58    lstrcat(basbuf,temp);
     59
     60    HeapDefaultFree(temp);
     61}
     62
    3663void OutputExe(void){
    3764    extern HANDLE hHeap;
    3865    extern char *basbuf;
     66    extern char *pBaseBuffer;
    3967    extern int ErrorNum;
    4068    extern BOOL bStopCompile;
     
    5987    //プログラムをファイルから読み込む
    6088    extern char SourceFileName[MAX_PATH];
    61     CSource::obj.OpenFile(SourceFileName);
    62 
    63     //未完成
    64     basbuf = CSource::obj.SourceCode;
     89    pBaseBuffer=OpenBasicFile(SourceFileName);
     90    if(!pBaseBuffer){
     91        SetError(201,SourceFileName,-1);
     92        goto EndCompile;
     93    }
     94    basbuf=pBaseBuffer+2;
    6595
    6696    //イメージベースの設定
     
    142172
    143173    StepCompileProgress();
    144 
    145 
    146     //字句解析
    147     CSource::obj.LexicalAnalysis(0);
    148174
    149175
     
    265291        HeapDefaultFree(IncludeFileInfo.ppFileNames[i2]);
    266292    HeapDefaultFree(IncludeFileInfo.ppFileNames);
     293
     294    if(pBaseBuffer) HeapDefaultFree(pBaseBuffer);
    267295}
    268296int MainThread(DWORD dummy){
Note: See TracChangeset for help on using the changeset viewer.