[alsa-devel] SALSA-Lib versus C++

Takashi Iwai tiwai at suse.de
Mon Jul 2 15:31:57 CEST 2007


At Mon, 02 Jul 2007 15:06:44 +0200,
I wrote:
> 
> At Sun, 1 Jul 2007 19:33:24 -0400,
> J. Scott Merritt wrote:
> > 
> > Dear List,
> > 
> > It -appears- to me that the source file headers generated by
> > SALSA-Lib-0.0.5 (for example SALSA:asoundlib.h)  are not
> > generally usable from within a C++ program compiled with g++.
> > 
> > The first problem that I encountered was a failure in
> > IOC_TYPECHECK from asm-generic/ioctl.h.  After much searching,
> > I concluded that this is a component of continuing struggles
> > related to "sanitized linux-kernel-headers".  Some of the Debian
> > folks have supplied patches to disable this particular check when
> > the ioctl.h file is included from userland, but these patched
> > headers are not present in my cross-compile environment.  This
> > behavior apparently is not a problem with gcc or g++ < 2.3.3 -
> > but shows up in later versions of g++. ... a real mess as best
> > I can tell ...
> > 
> > The next problem is that when warnings are enabled, g++
> > complains vigorously about void pointers that are implicitly
> > cast to typed pointers through-out all of the SALSA-Lib
> > supplied header files.
> > 
> > Perhaps SALSA-Lib was never intended from usable from C++
> > programs - and indeed it could argued that its intended
> > application (embedded systems) should avoid the use of C++.
> > If this is the case, perhaps a mention of this restriction
> > might be appropriate on the SALSA-Lib Website and/or in 
> > its README file ?
> 
> Did you try to include it from extern "C" { .. } block?

... looks like C++ really doesn't like the conversion.
So, don't use C++.  I hate it :)


Takashi


More information about the Alsa-devel mailing list