I have succeeded in getting a basic C++ module to function inside the FreeBSD 5.1 kernel.
I figured I'd show the small example I have cooked up which uses basic C++ constructs such a new/delete and virtual inheritance.
As suggested I have turned off exceptions have been turned off along with
RTTI.
the source and Makefile can be found at: http://www.cs.colorado.edu/~jgiacomo/fbsd_c++module
Things to note are:
a) I rolled my own .cc.o extension to the Makefile
removed -std=c99
added -fno-exceptions -fno-rtti -fno-builtin -nostdinc++
(-fno-builtin should be implied by -ffreestanding but does not seem to be)
b) __unused does not seem to work and needed to be #undef'ed * Any thoughts?
c) Constructs of the form "static void const * const" seem to be
silently ignored by the compiler. Possibly being 'inlined' in some fashion?
* Any thoughts?
part is 'c' is problem as various macros, such as MALLOC_DEFINE and DEV_MODULE, use that construct for initialization.
thoughts? comments? suggestions?
John G
_______________________________________________ [EMAIL PROTECTED] mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-hackers To unsubscribe, send any mail to "[EMAIL PROTECTED]"

