[alsa-devel] dereferencing pointer error in app but not in lib
Clemens Ladisch
cladisch at fastmail.net
Tue Apr 3 08:54:32 CEST 2007
intellij wrote:
> In the library, like pcm.c I can code like
>
> const char *snd_pcm_name(snd_pcm_t pcm) {
> return pcm->name;
> }
>
> At the same time, the same code in the application causes "dereferencing
> pointer to incomplete type" error. Note, the compiler does not tell that
> there is no such field in the pcm structure. It just thinks that the name
> has another type. Which one?
The type is the same, it's just incomplete (= not yet defined).
The library does this to prevent applications from accessing the fields
so that the API stays binary compatible.
HTH
Clemens
More information about the Alsa-devel
mailing list