瀏覽代碼

+ Implemented support for ;public name XYZ; construct

git-svn-id: trunk@4133 -
michael 19 年之前
父節點
當前提交
aa2d333b11
共有 1 個文件被更改,包括 18 次插入1 次删除
  1. 18 1
      fcl/passrc/pparser.pp

+ 18 - 1
fcl/passrc/pparser.pp

@@ -1492,10 +1492,27 @@ begin
         begin
         ExpectToken(tkSemicolon);
         end 
-      else if (UpperCase(CurTokenString) = 'EXTERNAL') then  
+      else if (tok = 'EXTERNAL') then  
         repeat
           NextToken;
         until CurToken = tkSemicolon
+      else if (tok = 'PUBLIC') then  
+        begin
+          NextToken; 
+          { Should be token Name, 
+            if not we're in a class and the public section starts }
+          If (Uppercase(CurTokenString)<>'NAME') then
+            begin
+            UngetToken;
+            UngetToken;
+            Break;
+            end
+          else
+            begin  
+            NextToken;  // Should be export name string.
+            ExpectToken(tkSemicolon);
+            end;
+        end
       else
         begin
         UnGetToken;