Believe it or not, "create_type" has never, ever checked to see if the given supertype is a valid type. The code now verifies that the given supertype is a child of "acs_object", except when supertype is passed in as NULL or '' (in which case it's set to acs_object). Only did it for PostgreSQL since it's been around forever and whatever Oracle users don't know, won't hurt them.