mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-04-21 20:09:25 +02:00
*** empty log message ***
This commit is contained in:
parent
520da0fc92
commit
9f6b250318
@ -4,6 +4,10 @@
|
||||
|
||||
Program X;
|
||||
|
||||
{$ifdef go32v2}
|
||||
uses dpmiexcp;
|
||||
{$endif go32v2}
|
||||
|
||||
Type
|
||||
PY=^Y;
|
||||
Y=Object
|
||||
@ -19,6 +23,7 @@ Constructor Y.Init(NewA:LongInt);
|
||||
A:=NewA;
|
||||
P:=@self;
|
||||
End;
|
||||
|
||||
Procedure Y.StaticMethod;
|
||||
Begin
|
||||
Writeln(P^.A); // Compiler complains about using A.
|
||||
@ -31,8 +36,17 @@ Procedure Y.StaticMethod;
|
||||
// new snapshot.
|
||||
Procedure Y.VirtualMethod;
|
||||
Begin
|
||||
Writeln('VirtualMethod');
|
||||
Writeln('VirtualMethod ',A);
|
||||
End;
|
||||
|
||||
var T1,T2 : PY;
|
||||
|
||||
Begin
|
||||
New(T1,init(1));
|
||||
New(T2,init(2));
|
||||
T1^.VirtualMethod;
|
||||
T2^.VirtualMethod;
|
||||
Y.StaticMethod;
|
||||
T1^.StaticMethod;
|
||||
T2^.StaticMethod;
|
||||
End.
|
||||
|
28
bugs/bug0216.pp
Normal file
28
bugs/bug0216.pp
Normal file
@ -0,0 +1,28 @@
|
||||
type rec = record
|
||||
a : Longint;
|
||||
b : Longint;
|
||||
c : Longint;
|
||||
d : record
|
||||
e : Longint;
|
||||
f : Word;
|
||||
end;
|
||||
g : Longint;
|
||||
end;
|
||||
|
||||
const r : rec = (
|
||||
a : 100; b : 200; c : 300; d : (e : 20; f : 30); g : 10);
|
||||
|
||||
|
||||
begin
|
||||
with r do begin
|
||||
Writeln('A : ', a);
|
||||
Writeln('B : ', b);
|
||||
Writeln('C : ', c);
|
||||
Writeln('D');
|
||||
with d do begin
|
||||
Writeln('E : ', e);
|
||||
Writeln('F : ', f);
|
||||
end;
|
||||
Writeln('G : ', g);
|
||||
end;
|
||||
end.
|
@ -209,6 +209,8 @@ Fixed bugs:
|
||||
bug0172.pp with with absolute seg:ofs should not be possible OK 0.99.9 (PM)
|
||||
bug0173.pp secondbug is parsed as asm, but should be normal pascalcode OK 0.99.9 (PFV)
|
||||
bug0174.pp Asm, offsets of fields are not possible yet OK 0.99.9 (PFV)
|
||||
bug0175.pp Asm, mov word,%eax should not be allowed without casting
|
||||
emits a warning (or error with range checking enabled) OK 0.99.11 (PM)
|
||||
bug0176.pp unit.symbol not allowed for implementation vars OK 0.99.9 (PM)
|
||||
bug0177.pp program.symbol not allowed (almost the same as bug 176) OK 0.99.9 (PM)
|
||||
bug0178.pp problems with undefined labels and fail outside constructor OK 0.99.9 (PM)
|
||||
@ -253,6 +255,9 @@ Fixed bugs:
|
||||
bug0213.pp name mangling problem with nested procedures in overloaded
|
||||
procedure OK 0.99.11 (PM)
|
||||
bug0214.pp bug for static methods OK 0.99.11 (PM)
|
||||
bug0215.pp more bugs with static methods OK 0.99.11 (PM)
|
||||
bug0216.pp problem with with fields as function args OK 0.99.11 (PM)
|
||||
|
||||
|
||||
Unproducable bugs:
|
||||
------------------
|
||||
@ -278,7 +283,6 @@ Unfixed bugs:
|
||||
-------------
|
||||
bug0123.pp Asm, problem with intel assembler (shrd)
|
||||
bug0124.pp Asm, problem with -Rintel switch and indexing (whatever the order)
|
||||
bug0175.pp Asm, mov word,%eax should not be allowed without casting
|
||||
|
||||
bug0185.pp missing range checking for Val and subrange types
|
||||
bug0198.pp calling specifications aren't allowed in class declarations,
|
||||
@ -288,4 +292,3 @@ bug0201.pp problem with record var-parameters and assembler
|
||||
bug0202.pp flag results not supported with case
|
||||
bug0206.pp sets with variable ranges doesn't work
|
||||
bug0212.pp problem with properties
|
||||
bug0215.pp more bugs with static methods
|
||||
|
Loading…
Reference in New Issue
Block a user