Hi, > You are missing the fact that all PetscObjects have an implementation > type and it is a string, and there is > one of these #defines for every class.
Ok, thanks for shedding light on that. > However, I would support namespacing all these Types since they are not > in heavy use, e.g. PetscVecType, PetscMatType. I assume that any compiler errors would be a LOT clearer if VecType were at least a typedef instead of a brutal preprocessor-define. Without having checked the following, #define VecType PetscVecType typedef char* PetscVecType; may already improve the situation substantially. Removing any preprocessor activity on the string/type 'VecType' would be the cleaner approach, though... Best regards, Karli
