[fpc-devel] don't you think it's time toupdatedelphimodecompatibility? - IDispatch, implements
Florian Klaempfl
F.Klaempfl at gmx.de
Sat May 28 23:20:19 CEST 2005
Matthias Hryniszak wrote:
>
> ----- Original Message ----- From: "Tomas Hajny" <XHajT03 at mbox.vol.cz>
> To: "FPC developers' list" <fpc-devel at lists.freepascal.org>
> Sent: Saturday, May 28, 2005 11:10 AM
> Subject: Re: [fpc-devel] don't you think it's time
> toupdatedelphimodecompatibility? - IDispatch, implements
>
>
>> Bisma Jayadi said:
>>
>>>>> Some known missing functionality:
>>>>> 1 implements style delegation
>>>>> 2 vararray support is patchy.
>>>>> 3 customvariants are missing in the rtl
>>>>> 4 packages
>>>>> 5 dispinterfaces and dispid.
>>>>> 6 assembler routines have some constructs that are not supported.
>>>>
>>>>
>>>> Can you tell which one(s) are missing then ?
>>>
>>>
>>> Mostly caused by number 2, 3, and 6.
>
>
> I don't get it. Variant support (after "using" variants unit) works
> good, custom variants is a mistery for me right now and assembler
> routines are not to be used in end-classes/methods/functions because of
> portability issues. Other thing is with the dispinterfaces and
> interfaces at all. The DO WORK perfectly in delphi but they are more
> than tricky in FPC (even though the support for interfaces has been
> greatly improved in 2.0). So in my opinion interfaces (which are the
> one-and-only) possibility for exporting "classes" from DLLs should be
> the most important thing to fix.
>
> Besides I find that FPC 2.0 makes the executables just to big.+
The rtl is slightly bigger because of the portability layers and an
optimizer aligning code for modern CPUs but upx makes them definitily
smaller than D. ones:
C:\fpc>type test1.pp
begin
writeln('Hello world');
end.
C:\fpc>fpc -Xs test1.pp
Free Pascal Compiler version 2.0.0 [2005/05/08] for i386
Copyright (c) 1993-2005 by Florian Klaempfl
Target OS: Win32 for i386
Compiling test1.pp
Linking test1.exe
3 Lines compiled, 0.0 sec
C:\fpc>dir test1.exe
Datenträger in Laufwerk C: ist 6Y120PO PRI
Volumeseriennummer: 12E3-1449
Verzeichnis von C:\fpc
28.05.2005 23:14 25.600 test1.exe
1 Datei(en) 25.600 Bytes
0 Verzeichnis(se), 3.637.313.536 Bytes frei
C:\fpc>upx test1.exe
Ultimate Packer for eXecutables
Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004
UPX 1.25w Markus F.X.J. Oberhumer & Laszlo Molnar Jun 29th
2004
File size Ratio Format Name
-------------------- ------ ----------- -----------
25600 -> 11264 44.00% win32/pe test1.exe
Packed 1 file.
C:\fpc>dir test1.exe
Datenträger in Laufwerk C: ist 6Y120PO PRI
Volumeseriennummer: 12E3-1449
Verzeichnis von C:\fpc
28.05.2005 23:14 11.264 test1.exe
1 Datei(en) 11.264 Bytes
0 Verzeichnis(se), 3.637.313.536 Bytes frei
C:\fpc>
IIRC Delphi creates 16 kB something.
> Even
> though I compressed them with UPX -9 they are still bigger than the one
> compiled with delphi. This is the one thing I really dislike in
> freepascal. Besides the lack of real working interfaces I find FPC my
> favourite pascal compiler.
>
> Regards,
> Matthias.
>
>
> _______________________________________________
> fpc-devel maillist - fpc-devel at lists.freepascal.org
> http://lists.freepascal.org/mailman/listinfo/fpc-devel
More information about the fpc-devel
mailing list