procedure Twirl(Sender: TObject);
EditRadius.OnChange:= @Twirl;
This works only if both twirl and OnChange have same parameters.
Can this assignment be done without that condition (both having same parameters) ?
The compiler has strong typing for a reason. A method/function passed to a method/function pointer with a different signature
will lead to crashes depending on the parameters and the calling convention / platform involved.
Tested, at design time I can put Twirl at onChange event, regardles if it has parameter/s or not.
I think it complains a bit, but accepts anyway and works.
It's simply that the compiler can't check at compile time whether everything is correct in the LFM file, because it knows nothing about LFM files. This
will break depending on the parameters and the calling convention / platform involved.
Don't do this.