I would say that the current status is that it "is an error". We might want to specify that redundant declarations are harmless, the conflicting case is (signals?) an error, and if the declared types are hierarchically related, the more restrictive governs. But right now, I don't think the user has the right to count on any particular behavior in these cases. -- Scott