[fpc-devel] Lazarus server maintenance

2021-12-23 Thread Marc Weustink via fpc-devel
Hi, On Monday 27 December 9.00 CET (8.00 GMT) the Lazarus server will be down for maintenance. This affects the following services: * Lazarus website * Lazarus mailinglists * Lazarus online package manager * Lazarus and FreePascal forum Thanks, Marc __

[fpc-devel] Initialising method pointers with class methods

2021-12-23 Thread Blaise--- via fpc-devel
DCC allows the subj (provided that the class type is known at compile time), FPC does not. The attached init_methptr_with_classmeth.patch implements this feature. ---8<--- type C = class class procedure Foo; end; class procedure C.Foo; begin end; type CC = class of C; type H = c

[fpc-devel] Just wanted to share...

2021-12-23 Thread Ozz Nixon via fpc-devel
As some of you who know me, know I wrote all kinds of interpreter and pcode compilers. Last night I decided to compile my latest engine in delphi. I ran a script that does over 18 million double = double + 0.5 Fpc build takes 1m 26.8s Delphi takes over 15min... I have up and walked away, when I

[fpc-devel] Assigning class methods, accessed via an object or helper type, to incompatible procvars

2021-12-23 Thread Blaise--- via fpc-devel
On 22.12.2021 21:16, Blaise wrote: 1) The attached metaclass_meth_to_procvar-1.patch fixes the internal error reported for: [ICE] Assigning class methods, accessed via a class reference type, to incompatible procvars Also fixes: 1B) [ICE] Assigning class static methods, accessed via an object

[fpc-devel] Assigning instance methods, accessed via a type, to method pointers

2021-12-23 Thread Blaise--- via fpc-devel
Subj silently produces invalid codegen: ---8<--- var Z: procedure of object; type R = record procedure Foo; end; procedure R.Foo; begin end; type O = object procedure Foo; end; procedure O.Foo; begin end; type C = class procedure Foo; class procedure Clas

[fpc-devel] Assigning class non-static methods, accessed via a helper type, to method pointers

2021-12-23 Thread Blaise--- via fpc-devel
Subj silently produces invalid codegen: ---8<--- type C = class end; type H = class helper for C class procedure Bar; end; class procedure H.Bar; begin writeln('H.Bar(self=', ClassName, ')') end; var Z: procedure of object; begin Z := H.Bar; // BadCG: GARBAGE

Re: [fpc-devel] Assigning class methods, accessed via a class reference type, to procvars

2021-12-23 Thread Ryan Joseph via fpc-devel
Thank you for continuing work on this, we all really appreciate your efforts. > On Dec 23, 2021, at 1:16 AM, Blaise--- via fpc-devel > wrote: > > 1) The attached metaclass_meth_to_procvar-1.patch fixes the internal error > reported for: Regards, Ryan Joseph __