[Lazarus] Pointer type handling

Hans-Peter Diettrich DrDiettrich1 at aol.com
Mon Dec 9 16:24:22 CET 2013


Leonardo M. Ramé schrieb:
> Hi, I'm passing a pointer buffer as void * to a C library that returns
> Uint8 or Uint16 (and signed types).
> 
> If I explicitly declare the buffer as PByte, PWord, etc. I get exactly
> what I need, but, I would like to work with an abstract type (for
> example Pointer) and cast it depending on a flag returned by the
> library.
> 
> If I pass a Pointer (instead of a PWord or PByte) and cast it to PWord,
> for example. I get the same result if I have passed a PByte.
> 
> How can I handle a situation like this without explicitly define each
> type?.

I'm not sure what you mean. How does your code look like now, and how do 
you want it to look?

You can modify the function declarations in your units, to accept the 
properly typed pointer or an Var parameter.

DoDi





More information about the Lazarus mailing list