Dave Bender wrote: > Although your solution is correct, I want to instantiate the structs > in reside in the .rodata section of the DSO, > which cannot be done by using the output of a function call. I don't think it's possible, since having a base class makes struct B non-POD. There might be hope in C++0x, where the POD type rules have been revisited, but that's still a draft and from the status page it's not implemented in any gcc yet: <http://gcc.gnu.org/projects/cxx0x.html>. Brian