[fpc-pascal] const records passed incorrectly

Jonas Maebe jonas.maebe at elis.ugent.be
Mon Nov 16 15:51:04 CET 2009

On 16 Nov 2009, at 15:29, Anthony Walter wrote:

> "FreePascal did this before something else so we shouldn't change"
> Forgetting the whole argument about who was actually first, I have to
> ask what difference does it make?

I was merely answering your question why we do it differently than  
Delphi, even though Delphi is generally the de facto standard. I was  
trying to explain that we did not do it differently simply because our  
way was the right one and Delphi's way the wrong one, or out of spite  
or so. But it appears that you interpreted my answer in exactly the  
opposite sense (that we won't change it out of spite).

The main problem with changing it now would obviously be that it would  
break backwards compatibility with existing code. It could still be  
done in Delphi mode onlu, of course, but changing the behaviour of a  
calling convention (which is normally an ABI issue) based on a  
language syntax mode feels... not right.

> There there these incompatibilities causing me to avoid language
> features. I'd like to use them but just won't (Operator overloading
> and generics come to mind), mostly because I really don't want to have
> ifdefs all over the place.

It's a lot of work to re-implement everything afterwards according to  
how Borland decided to implement things. Our time is finite, just like  
everyone else's... And generally people prefer to spend their time on  
implementing new features (that Borland again can add a few months/ 
year later using an incompatible syntax/behaviour ;) rather than on  
overhauling existing ones, or on Delphi features that we do not  
support at all yet.

In general, Delphi syntax is usually integrated/supported after a  
while anyway (because someone submits a patch, or because it becomes  
widely used and someone wants to use code that uses this feature).  
Like most community-driven open source projects, the way FPC evolves  
is primarily driven by
a) the interests of its core developers
b) the interest of other people that submit patches

There is no company (yet?) that writes FPC patches for commercially  
supporting Delphi developers, afaik. The closest there is, is http://wiki.freepascal.org/Bounties


More information about the fpc-pascal mailing list