Chaosforge Forum
Coding => FPC Valkyrie => Topic started by: Kornel Kisielewicz on October 14, 2008, 15:20
-
Valkyrie doesn't and will not work with FPC 2.2.2. The reason is that 2.2.2 has broken generics support ( surprisingly 2.2.0 has proper support ) as seen in this bug report : http://bugs.freepascal.org/view.php?id=12249
Using the destructor overriding of generics is one of the core mechanics used by Valkyrie, so there is no way to circumvent this problem.
Till the next version of FPC comes out I fully encourage you to use 2.2.0. As the download of 2.2.0 is not available on the freepascal homepage, here's a link to an archived version:
Windows : http://ftp.icm.edu.pl/packages/fpc/dist/i386-win32-2.2.0/
Linux : http://ftp.icm.edu.pl/packages/fpc/dist/i386-linux-2.2.0/
Other : http://ftp.icm.edu.pl/packages/fpc/dist/
-
Just as a heads up for anyone that's looking for a 2.2.0 release of Free Pascal, the binaries are still up on SourceForge, just not very easy to find (At least for me..the above links posted by Kornel no longer exist from what I can tell). I've included the direct link to the 2.2.0 win32 release below:
http://sourceforge.net/project/downloading.php?groupname=freepascal&filename=fpc-2.2.0.i386-win32.exe&use_mirror=internap
Happy coding ; )
-
What about 2.2.4?
Bugreport is still open, but maybe bug suffered some collateral damage (there were some generics-related fixes) and died?..
-
I did a preliminary try and it seems to work. Any more testing widely appriciated.
-
Happy days and jubilation!
Then as soon as I get my personal life back, I'll make a swing at it...
-
Hmm, can't compile it with Lazarus 0.9.26.3\2.2.4
D:\SVN\FP\Valk\vds.pas(76,8) Error: Duplicate identifier "_T"
That is the
constructor Create(InitialSize : DWord = 16; IncrementSize : DWord = 0);
line, corresponding to
generic TManagedArray<_T> = class(TUnmanagedObjectArray)
// Standard constructor, reserves InitialSize slots for the array.
// Increment size is the minimal size of expansion. If no IncrementSize is
// specified then the array size is doubled each time it runs out of space.
constructor Create(InitialSize : DWord = 16; IncrementSize : DWord = 0);
What is wrong here?
-
Should work with the version from SVN :).
Note : FPC Valkyrie moved to https://sourceforge.net/projects/fpcvalkyrie/
-
Confirmed: it does work indeed.