My apologies if this is an FAQ. It's been explained to me in the past the extent to which helpers are chained, and that if you define a helper of a base class (etc.) when one already exists you can break things.
How does one find out whether a class (etc.) already has a helper or a chain of helpers?
From what I can see, the documentation doesn't automatically annotate a base type with
This has a helper, see xxx even if elsewhere it describes helpers for that class, for example
https://www.freepascal.org/docs-html/rtl/sysutils/tnativeuinthelper.html describes a helper but the base class
https://www.freepascal.org/docs-html/rtl/system/nativeuint.html doesn't mention it.
Similarly, I don't think there's any runtime check that can be put in a unit defining a helper which indicates whether there is already one or more helpers for the base type. And I don't think there's anything in Lazarus (haven't checked the FP IDE recently) that can be used for a coding-time check.
Sorry if this sounds like a whine, but it all started when somebody mentioned string helpers in the forum yesterday and I went to the base type to look them up.
And finally, while I'm kvetching, could we
please have some indication in the documentation of what version supports new features like
https://www.freepascal.org/docs-html/rtl/sysutils/tstringhelper.html since people who- often for good reason- are using slightly older versions of the compiler are likely to end up in the same set of reference documentation when they have problems.
Here endeth the whinge.
MarkMLl