Browse Source

* test if private symbols in with symtable are skipped

peter 24 years ago
parent
commit
bd318085ee
2 changed files with 59 additions and 0 deletions
  1. 38 0
      tests/tbs/tb0366.pp
  2. 21 0
      tests/tbs/ub0366.pp

+ 38 - 0
tests/tbs/tb0366.pp

@@ -0,0 +1,38 @@
+{$ifdef fpc}{$mode objfpc}{$endif}
+
+uses
+  ub0366;
+
+type
+  tc2=class
+  public
+    FHeight : integer;
+    procedure p1;
+  end;
+
+procedure tc2.p1;
+var
+  c1 : tc1;
+begin
+  FHeight:=10;
+  c1:=tc1.create;
+  with c1 do
+   begin
+     Height:=FHeight;
+   end;
+  writeln('c1.Height: ',c1.Height,' (should be 10)');
+  if c1.Height<>10 then
+   begin
+     writeln('ERROR!');
+     halt(1);
+   end;
+  c1.free;
+end;
+
+var
+  c2 : tc2;
+begin
+  c2:=tc2.create;
+  c2.p1;
+  c2.free;
+end.

+ 21 - 0
tests/tbs/ub0366.pp

@@ -0,0 +1,21 @@
+{$ifdef fpc}{$mode objfpc}{$endif}
+unit ub0366;
+interface
+
+type
+  tc1=class
+  private
+    FHeight : integer;
+  public
+    constructor Create;
+    property Height : integer read FHeight write FHeight;
+  end;
+
+implementation
+
+constructor tc1.Create;
+begin
+  FHeight:=0;
+end;
+
+end.