Forráskód Böngészése

* fixed spelling of "isforward" parameter in previous patch
* fixed support for fully qualified classes that are multiple levels deep
in another part of the hierarchy (+ adapted test)

git-svn-id: trunk@17112 -

Jonas Maebe 14 éve
szülő
commit
af38604706
2 módosított fájl, 12 hozzáadás és 3 törlés
  1. 2 3
      compiler/ptype.pas
  2. 10 0
      tests/test/tclass13.pp

+ 2 - 3
compiler/ptype.pas

@@ -389,7 +389,7 @@ implementation
       end;
 
 
-    procedure parse_nested_types(var def: tdef; isfowarddef: boolean);
+    procedure parse_nested_types(var def: tdef; isforwarddef: boolean);
       var
         t2: tdef;
       begin
@@ -406,10 +406,9 @@ implementation
                  symtablestack.push(tabstractrecorddef(def).symtable);
                  consume(_POINT);
                  t2:=generrordef;
-                 id_type(t2,isfowarddef);
+                 id_type(t2,isforwarddef);
                  symtablestack.pop(tabstractrecorddef(def).symtable);
                  def:=t2;
-                 break;
                end
              else
                break;

+ 10 - 0
tests/test/tclass13.pp

@@ -18,6 +18,16 @@ type
             FNode: TRootClass.TNode.TNode;
           end;
           en = (e1,e2);
+      TOtherNode = class
+      public
+        type
+          TNestedInOtherNode = class
+            ffield: longint;
+          end;
+      end;
+      TFinalNode = class
+        fx: TRootClass.TOtherNode.TNestedInOtherNode;
+      end;
       published
         property Test: Integer read FTest write FTest;
       end;