Polymorphic Data Structures in C/Polymorphism