[fpc-devel] [Suggestion] Enumeration range-check intrinsic
Michael Van Canneyt
michael at freepascal.org
Sat Jul 13 21:59:29 CEST 2019
On Sat, 13 Jul 2019, Ben Grasset wrote:
> On Sat, Jul 13, 2019 at 3:47 PM Michael Van Canneyt <michael at freepascal.org>
> wrote:
>
>> No doubt, but this will lead to a bloated binary. I want less code (both
>> source and assembler), not more.
>>
>
> Well, it would be one instantiation per unique type it was used on.
I know. See below.
>
> So if you had five hand-written helper functions for different types, and
> replaced all of them with the use of a single generic function, you'd still
> end up with just five functions worth of assembler code (i.e. the same
> amount you had to begin with.)
Yes, I know. But the goal is to have 'is/as'. Then there is at best only 1 helper
function for all enumerateds.
I have a Delphi project that uses really lots of generics. The decrease in
compilation speed and increase in binary size is truly noticeable.
<aside>
In general, I strive to minimalize the use of generics or avoid them at all.
IMO there are little use cases that really justify the use of generics.
But that's a highly personal opinion.
</aside>
Michael.
More information about the fpc-devel
mailing list