sun4m.c and sun4u.c both define a qdev named TYPE_OPENPROM. As far as I can tell, they differ only in the name of their memory region.
If they ever get linked into the same executable, type_register_internal() will reject the second one. But they aren't, so this isn't a bug. Is it bad style?