Just pass the DIComposite type by value instead of by pointer.
80-col.
Formatting.
Unify the adding of enumerators with the construction of the enumeration.