Marc:Yeah, don't worry about that comment about "most users". Not enough coffee this morning to get me through the afternoon.OK, so you could not create the role because when a user is added to the systabauth, syscolauth, or even sysusers indirectly say by creating a table or column privilege or granting a default role to it, that user name is assumed to be a "user" and not a role. So, when you tried to create a role with the same name it fails because the name already exists and it's not a role. The error, -19800 is described as "Role name already exists as a user or role". Any role must have an entry in sysusers with usertype 'G', so if there are privs for some name that does not have a row in sysusers, it must be a partially privileged "user", it can't be a role and you cannot create a role with the same name as any existing user name.
As to why it is permitted to create a user privilege for a user id that has no connect privilege, that probably has to do with design decisions made over 30 years ago to not have any relational integrity support in the system catalog tables. There are no constraints requiring that entries in systabauth or syscolauth refer to a row in sysusers.