[Lazarus] installing chm help

Hans-Peter Diettrich DrDiettrich1 at aol.com
Wed Feb 15 13:10:44 CET 2012


Sven Barth schrieb:

>> IMO "Integer" is a compiler built-in type, and thus it doesn't have a
>> reference to the current declaration. The same for Char and string types
>> :-(
>>
> 
> You don't like to validate your assumptions, do you?

You're right, the *basic* types (SmallInt...) are not documented, the 
*generic* types are. That's why I added "IMO", because I was too lazy 
ATM to dig deeper into the problems.

> rtl/inc/systemh.inc, line 87:
> 
> Type
>   { The compiler has all integer types defined internally. Here
>     we define only aliases }
>   DWord    = LongWord;
>   Cardinal = LongWord;
>   Integer  = SmallInt;
>   UInt64   = QWord;

One problem is the missing declaration of "SmallInt", which makes the 
"Integer" declaration useless.

> and rtl/objpas/objpas.pp, line 24:
> 
>     { first, in object pascal, the integer type must be redefined }
>     const
>        MaxInt  = MaxLongint;
>     type
>        Integer  = longint;

...what causes further confusion. I accept that a documentation 
*generator* can not know about the later setting of the compiler mode. 
An IDE might know that mode and the target platform, though. But how 
should it propagate that knowledge to the help viewer? And how shall the 
user know which of the duplicate entries applies?


> Please validate first by either checking the documentation by hand 
> (using lHelp's search) or using "IDENTIFER site:freepascal.org" on Google.

I trust a user when he says that something doesn't work, e.g. he doesn't 
get help displayed for some keyword. Next comes the search for the 
reason, maybe a configuration only, or a more general problem. And there 
I search in my "knowledge base" for similar items, but because human 
brains work differently from computer storage, my memory may be 
misadjusted, but it is not normally plain wrong.

DoDi





More information about the Lazarus mailing list