Bochs/bochs-testing/plugin-test/test11-modglobalconstr
2002-10-17 00:09:54 +00:00
..
main.cc - add workaround for solaris that forces new operator to be linked with main 2002-10-17 00:09:54 +00:00
main.h - add test11, which checks whether global constructors in a shared lib a 2002-10-16 15:04:44 +00:00
Makefile.in - add test11, which checks whether global constructors in a shared lib a 2002-10-16 15:04:44 +00:00
module1.cc - add test11, which checks whether global constructors in a shared lib a 2002-10-16 15:04:44 +00:00
module2.cc - add test11, which checks whether global constructors in a shared lib a 2002-10-16 15:04:44 +00:00
modules.h - add test11, which checks whether global constructors in a shared lib a 2002-10-16 15:04:44 +00:00
README - add test11, which checks whether global constructors in a shared lib a 2002-10-16 15:04:44 +00:00
uselib.out.expected - add test11, which checks whether global constructors in a shared lib a 2002-10-16 15:04:44 +00:00

test11-modglobalconstr

This is the description from test10-modvirtual:
> Create an interface class in modules.h called DeviceInterface.  Each module
> creates a child class of DeviceInterface, and implements its methods.  This
> test loads the modules, calls the module's module_init() which instantiates a
> subclass of DeviceInterface and returns a pointer to it.  Then main can 
> operate on this object using the DeviceInterface class.

In test11, I have changed only one thing.  Module2's class is created 
in a global constructor.  Global constructors SHOULD be called when
the module loads, but if your C++ compile/link process is broken or
libtool uses the args, then sometimes global constructors in shared
libs are NOT loaded.

If test10 succeeds, but test11 fails, then you will know that your
platform does not call global constructors on shared libraries
when they are loaded.