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
_______________________________________________
fpc-devel maillist  -  fpc-devel@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-devel

Reply via email to