In the discussion here, some arguments were raised on why deliberately having multiply defined labels may be desirable. This does of course come with drawbacks, but we could consider letting users specify a list of warnings to ignore? Otherwise, package authors will have to set warnings-as-errors to false, which may cause "actual" errors to slip through.