[fpc-devel] delphi compatibility issues
Jonas Maebe
jonas.maebe at elis.ugent.be
Fri May 25 15:37:53 CEST 2007
On 25 mei 2007, at 15:23, Mario R. Carro wrote:
> - Some assembler does not compile. For example this function, in
> JclLogic.pas:
>
> procedure SetBitBuffer(var Value; const Bit: Cardinal);
> asm
> BTS [Value], Bit
> end;
>
> This unit can be compiled with FPC defining PUREPASCAL but with
> degraded
> performance in many functions.
Please submit a bug for this.
> - Interface implementation delegation requires an interface type
> (but Delphi
> accepts classes). For example, in JclSchedule.pas:
>
> property DailyFreq: TDailyFreq read FDailyFreq implements
> IJclScheduleDayFrequency;
>
> where TDailyFreq is a class (derived from TAggregatedObject).
For this also.
> - Classes implementing interfaces must implement all the interface
> methods
> (but Delphi compiles the code happily without them). See, for
> example, the
> class TSchedule in JclSchedule.pas. Adding virtual abstract
> declarations for
> the missing methods to the class solves the problem in FPC in a Delphi
> compatible way. Perhaps FPC should do it automatically in those cases?
To me, this sounds like a bug in Delphi, although we may emulate it
one day in Delphi mode. Either a class implements an interface, or it
doesn't. I think it's better to solve this on the JCL side.
Jonas
More information about the fpc-devel
mailing list