fn validate_crate_types( target: &TomlTarget, kind: &str, edition: Edition, warnings: &mut Vec<String>, ) -> CargoResult<()>