Don't ICE on bad extern paths

Closes #17990
Maybe this could be `"location for crate {} is not a file: {}"` using `self.crate_name`.