[fpc-pascal] function param and TVarRec

2013-09-24 Thread Xiangrong Fang
Hi There, If you declare this: procedure proc(param: array of const); Then you can pass any type of varaible to param, however, only in an array, such as proc([1, 2]); Is it possible to achieve the effect of the code below (which is wrong): procedure proc(p1: const; p2: const); So that: 1)

Re: [fpc-pascal] function param and TVarRec

2013-09-24 Thread Michael Van Canneyt
On Tue, 24 Sep 2013, Xiangrong Fang wrote: Hi There, If you declare this: procedure proc(param: array of const); Then you can pass any type of varaible to param, however, only in an array, such as proc([1, 2]); Is it possible to achieve the effect of the code below (which is wrong):

Re: [fpc-pascal] function param and TVarRec

2013-09-24 Thread Xiangrong Fang
Thanks, this works, sort of. But does not meet my needs, I will pass in either an int value or an object, but Variant is not compatible with TObject. Alternatively, this also does NOT work: array [0..1] of const; no matter it is a type definition or used as function parameter. This is a

Re: [fpc-pascal] function param and TVarRec

2013-09-24 Thread Michael Van Canneyt
On Tue, 24 Sep 2013, Xiangrong Fang wrote: Thanks,  this works, sort of.  But does not meet my needs, I will pass in either an int value or an object, but Variant is not compatible with TObject. You could make it so using a custom variant manager or operator overloading, but this requires