Watch, Follow, &
Connect with Us
Public Report
Report From: Delphi-BCB/Compiler/Delphi/Generics    [ Add a report in this area ]  
Report #:  69973   Status: Closed
F2084 Internal Error: AV00485E89-W00000014-1 using absolute for a typed variable
Project:  Delphi Build #:  12.0.3210.17555
Version:    12.0 Submitted By:   Uwe Schuster
Report Type:  Crash / Data loss / Total failure Date Reported:  12/17/2008 12:10:00 PM
Severity:    Infrequently encountered problem Last Updated: 9/5/2012 8:15:05 PM
Platform:    All platforms Internal Tracking #:   267385
Resolution: Fixed (Resolution Comments) Resolved in Build: : 17.0.4625.53395
Duplicate of:  None
Voting and Rating
Overall Rating: No Ratings Yet
0.00 out of 5
Total Votes: 1
Description
It is not possible to use absolute with a typed variable in a generic class

procedure TFooList<T>.Notification(AComponent: TObject);
var
  Item: T absolute AComponent;
begin
end;

-> see steps

This test case was extracted from the thread
"D2009 Generics: F2084 Internal Error: AV21B6B7A9-W00000014-1"
https://forums.codegear.com/thread.jspa?threadID=8752&tstart=0

Steps to Reproduce:
- save the attached file GenericsAbsoluteTest.dpr or the following code
- dcc32 GenericsAbsoluteTest.dpr

expected: it compiles
actual: GenericsAbsoluteTest.dpr(23) Fatal: F2084 Internal Error: AV00485E89-W00000014-1


program GenericsAbsoluteTest;

{$APPTYPE CONSOLE}

type
  TFooList<T> = class(TObject)
  public
    procedure Notification(AComponent: TObject);
  end;

  TBarList = TFooList<TObject>;

procedure TFooList<T>.Notification(AComponent: TObject);
var
  Item: T absolute AComponent;
begin
end;

begin
  WriteLn('PASS');
end.
Workarounds
None
Attachment
JED94CC.zip
Comments

None

Server Response from: ETNACODE01