소스 검색

Report correct error positions inside macros (at least more often).

Rika Ichinose 2 년 전
부모
커밋
224f62a843
1개의 변경된 파일3개의 추가작업 그리고 1개의 파일을 삭제
  1. 3 1
      compiler/scanner.pas

+ 3 - 1
compiler/scanner.pas

@@ -2564,7 +2564,6 @@ type
         else
           begin
             mac.defined:=true;
-            mac.fileinfo:=current_tokenpos;
             mac.is_compiler_var:=false;
           { delete old definition }
             mac.free_buftext;
@@ -2591,6 +2590,9 @@ type
              if is_keyword(hs) then
                Message(scan_e_keyword_cant_be_a_macro);
 
+             current_scanner.gettokenpos;
+             mac.fileinfo:=current_tokenpos;
+
              macropos:=0;
              { parse macro, brackets are counted so it's possible
                to have a $ifdef etc. in the macro }