> On Nov 12, 2018, at 8:08 AM, Ryan Joseph <r...@thealchemistguild.com> wrote:
> 
> But this syntax worked if you assigned it within blocks. Why does it need to 
> be removed? Since I discovered it I was planning on using it instead of class 
> functions with default values which require an implementation and are much 
> longer to write.

Here’s an example of what I was doing before. A constant is so much better and 
doesn’t require the implementation and we still get the same . syntax, i.e., 
TPoint.Up. 

Instead of removing it maybe give the error unless it’s the last field of the 
record and in which case can assumed to be fully defined.

type
  TPoint = record
    x: TFloat;
    y: TFloat;
    class function Up (_x: TFloat = 0; _y: TFloat = -1): TPoint; static; inline;

Regards,
        Ryan Joseph

_______________________________________________
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-pascal

Reply via email to