Dictionary of Pair of Dictionary causes XE7 compiler crash
Issue #115
closed
It took me a while to identify this one, it was the show stopper for us to upgrade to XE7:
program Project1;
{$APPTYPE CONSOLE}
{$R *.res}
uses
System.SysUtils,
System.Generics.Collections,
Spring.Collections;
type
Baz = IDictionary<IInterface, IInterface>;
Bar = TPair<Integer, Baz>;
Foo = IDictionary<TObject, Bar>;
begin
end.
I'm using the current HEAD of the develop branch c5382d8b97ac27745ec144f808182857a45aeed9
This causes the compiler to AV at the linking stage (but only in Debug configurations!).
The exact error message: [dcc32 Fataler Fehler] F2084 Interner Fehler: AV0DA1F9CE-R00000498-0
I have Delphi XE 7 Update 1 installed.
Comments (4)
-
repo owner -
reporter No problem, since it's easy to work around. I just replaced TPair with a non-generic custom record type that holds a key and a value.
The most trouble was to find the bug in the first place.
The ball is now on Embarcaderos side.
-
repo owner - changed status to closed
-
repo owner - changed version to 1.2
- Log in to comment
I was able to reduce it a bit more to not only occur with Spring4D.
Surprisingly that issue is already open for quite a while - but it seems it lacked a proper example to reproduce: https://quality.embarcadero.com/browse/RSP-9971
Apart from that I guess unfortunately we cannot do anything else from our side.