Skip to content

Commit 4442f13

Browse files
committed
rustc_metadata: remove huge error imports
1 parent 60e82ae commit 4442f13

File tree

3 files changed

+89
-92
lines changed

3 files changed

+89
-92
lines changed

compiler/rustc_metadata/src/creader.rs

Lines changed: 13 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,6 @@
11
//! Validates all used crates and extern libraries and loads their metadata
22
3-
use crate::errors::{
4-
ConflictingAllocErrorHandler, ConflictingGlobalAlloc, CrateNotPanicRuntime,
5-
GlobalAllocRequired, NoMultipleAllocErrorHandler, NoMultipleGlobalAlloc, NoPanicStrategy,
6-
NoTransitiveNeedsDep, NotProfilerRuntime, ProfilerBuiltinsNeedsCore,
7-
};
3+
use crate::errors;
84
use crate::locator::{CrateError, CrateLocator, CratePaths};
95
use crate::rmeta::{CrateDep, CrateMetadata, CrateNumMap, CrateRoot, MetadataBlob};
106

@@ -768,10 +764,11 @@ impl<'a> CrateLoader<'a> {
768764
// Sanity check the loaded crate to ensure it is indeed a panic runtime
769765
// and the panic strategy is indeed what we thought it was.
770766
if !data.is_panic_runtime() {
771-
self.sess.emit_err(CrateNotPanicRuntime { crate_name: name });
767+
self.sess.emit_err(errors::CrateNotPanicRuntime { crate_name: name });
772768
}
773769
if data.required_panic_strategy() != Some(desired_strategy) {
774-
self.sess.emit_err(NoPanicStrategy { crate_name: name, strategy: desired_strategy });
770+
self.sess
771+
.emit_err(errors::NoPanicStrategy { crate_name: name, strategy: desired_strategy });
775772
}
776773

777774
self.cstore.injected_panic_runtime = Some(cnum);
@@ -791,29 +788,30 @@ impl<'a> CrateLoader<'a> {
791788

792789
let name = Symbol::intern(&self.sess.opts.unstable_opts.profiler_runtime);
793790
if name == sym::profiler_builtins && self.sess.contains_name(&krate.attrs, sym::no_core) {
794-
self.sess.emit_err(ProfilerBuiltinsNeedsCore);
791+
self.sess.emit_err(errors::ProfilerBuiltinsNeedsCore);
795792
}
796793

797794
let Some(cnum) = self.resolve_crate(name, DUMMY_SP, CrateDepKind::Implicit) else { return; };
798795
let data = self.cstore.get_crate_data(cnum);
799796

800797
// Sanity check the loaded crate to ensure it is indeed a profiler runtime
801798
if !data.is_profiler_runtime() {
802-
self.sess.emit_err(NotProfilerRuntime { crate_name: name });
799+
self.sess.emit_err(errors::NotProfilerRuntime { crate_name: name });
803800
}
804801
}
805802

806803
fn inject_allocator_crate(&mut self, krate: &ast::Crate) {
807804
self.cstore.has_global_allocator = match &*global_allocator_spans(&self.sess, krate) {
808805
[span1, span2, ..] => {
809-
self.sess.emit_err(NoMultipleGlobalAlloc { span2: *span2, span1: *span1 });
806+
self.sess.emit_err(errors::NoMultipleGlobalAlloc { span2: *span2, span1: *span1 });
810807
true
811808
}
812809
spans => !spans.is_empty(),
813810
};
814811
self.cstore.has_alloc_error_handler = match &*alloc_error_handler_spans(&self.sess, krate) {
815812
[span1, span2, ..] => {
816-
self.sess.emit_err(NoMultipleAllocErrorHandler { span2: *span2, span1: *span1 });
813+
self.sess
814+
.emit_err(errors::NoMultipleAllocErrorHandler { span2: *span2, span1: *span1 });
817815
true
818816
}
819817
spans => !spans.is_empty(),
@@ -849,7 +847,7 @@ impl<'a> CrateLoader<'a> {
849847
if data.has_global_allocator() {
850848
match global_allocator {
851849
Some(other_crate) => {
852-
self.sess.emit_err(ConflictingGlobalAlloc {
850+
self.sess.emit_err(errors::ConflictingGlobalAlloc {
853851
crate_name: data.name(),
854852
other_crate_name: other_crate,
855853
});
@@ -864,7 +862,7 @@ impl<'a> CrateLoader<'a> {
864862
if data.has_alloc_error_handler() {
865863
match alloc_error_handler {
866864
Some(other_crate) => {
867-
self.sess.emit_err(ConflictingAllocErrorHandler {
865+
self.sess.emit_err(errors::ConflictingAllocErrorHandler {
868866
crate_name: data.name(),
869867
other_crate_name: other_crate,
870868
});
@@ -884,7 +882,7 @@ impl<'a> CrateLoader<'a> {
884882
if !self.sess.contains_name(&krate.attrs, sym::default_lib_allocator)
885883
&& !self.cstore.iter_crate_data().any(|(_, data)| data.has_default_lib_allocator())
886884
{
887-
self.sess.emit_err(GlobalAllocRequired);
885+
self.sess.emit_err(errors::GlobalAllocRequired);
888886
}
889887
self.cstore.allocator_kind = Some(AllocatorKind::Default);
890888
}
@@ -917,7 +915,7 @@ impl<'a> CrateLoader<'a> {
917915
for dep in self.cstore.crate_dependencies_in_reverse_postorder(krate) {
918916
let data = self.cstore.get_crate_data(dep);
919917
if needs_dep(&data) {
920-
self.sess.emit_err(NoTransitiveNeedsDep {
918+
self.sess.emit_err(errors::NoTransitiveNeedsDep {
921919
crate_name: self.cstore.get_crate_data(krate).name(),
922920
needs_crate_name: what,
923921
deps_crate_name: data.name(),

compiler/rustc_metadata/src/locator.rs

Lines changed: 27 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -213,12 +213,7 @@
213213
//! metadata::locator or metadata::creader for all the juicy details!
214214
215215
use crate::creader::Library;
216-
use crate::errors::{
217-
CannotFindCrate, CrateLocationUnknownType, DlError, ExternLocationNotExist,
218-
ExternLocationNotFile, FoundStaticlib, IncompatibleRustc, InvalidMetadataFiles,
219-
LibFilenameForm, MultipleCandidates, NewerCrateVersion, NoCrateWithTriple, NoDylibPlugin,
220-
NonAsciiName, StableCrateIdCollision, SymbolConflictsCurrent, SymbolConflictsOthers,
221-
};
216+
use crate::errors;
222217
use crate::rmeta::{rustc_version, MetadataBlob, METADATA_HEADER};
223218

224219
use rustc_data_structures::fx::{FxHashMap, FxHashSet};
@@ -980,28 +975,28 @@ impl CrateError {
980975
pub(crate) fn report(self, sess: &Session, span: Span, missing_core: bool) {
981976
match self {
982977
CrateError::NonAsciiName(crate_name) => {
983-
sess.emit_err(NonAsciiName { span, crate_name });
978+
sess.emit_err(errors::NonAsciiName { span, crate_name });
984979
}
985980
CrateError::ExternLocationNotExist(crate_name, loc) => {
986-
sess.emit_err(ExternLocationNotExist { span, crate_name, location: &loc });
981+
sess.emit_err(errors::ExternLocationNotExist { span, crate_name, location: &loc });
987982
}
988983
CrateError::ExternLocationNotFile(crate_name, loc) => {
989-
sess.emit_err(ExternLocationNotFile { span, crate_name, location: &loc });
984+
sess.emit_err(errors::ExternLocationNotFile { span, crate_name, location: &loc });
990985
}
991986
CrateError::MultipleCandidates(crate_name, flavor, candidates) => {
992-
sess.emit_err(MultipleCandidates { span, crate_name, flavor, candidates });
987+
sess.emit_err(errors::MultipleCandidates { span, crate_name, flavor, candidates });
993988
}
994989
CrateError::SymbolConflictsCurrent(root_name) => {
995-
sess.emit_err(SymbolConflictsCurrent { span, crate_name: root_name });
990+
sess.emit_err(errors::SymbolConflictsCurrent { span, crate_name: root_name });
996991
}
997992
CrateError::SymbolConflictsOthers(root_name) => {
998-
sess.emit_err(SymbolConflictsOthers { span, crate_name: root_name });
993+
sess.emit_err(errors::SymbolConflictsOthers { span, crate_name: root_name });
999994
}
1000995
CrateError::StableCrateIdCollision(crate_name0, crate_name1) => {
1001-
sess.emit_err(StableCrateIdCollision { span, crate_name0, crate_name1 });
996+
sess.emit_err(errors::StableCrateIdCollision { span, crate_name0, crate_name1 });
1002997
}
1003998
CrateError::DlOpen(s) | CrateError::DlSym(s) => {
1004-
sess.emit_err(DlError { span, err: s });
999+
sess.emit_err(errors::DlError { span, err: s });
10051000
}
10061001
CrateError::LocatorCombined(locator) => {
10071002
let crate_name = locator.crate_name;
@@ -1012,8 +1007,12 @@ impl CrateError {
10121007
if !locator.crate_rejections.via_filename.is_empty() {
10131008
let mismatches = locator.crate_rejections.via_filename.iter();
10141009
for CrateMismatch { path, .. } in mismatches {
1015-
sess.emit_err(CrateLocationUnknownType { span, path: &path, crate_name });
1016-
sess.emit_err(LibFilenameForm {
1010+
sess.emit_err(errors::CrateLocationUnknownType {
1011+
span,
1012+
path: &path,
1013+
crate_name,
1014+
});
1015+
sess.emit_err(errors::LibFilenameForm {
10171016
span,
10181017
dll_prefix: &locator.dll_prefix,
10191018
dll_suffix: &locator.dll_suffix,
@@ -1039,7 +1038,7 @@ impl CrateError {
10391038
));
10401039
}
10411040
}
1042-
sess.emit_err(NewerCrateVersion {
1041+
sess.emit_err(errors::NewerCrateVersion {
10431042
span,
10441043
crate_name: crate_name,
10451044
add_info,
@@ -1055,7 +1054,7 @@ impl CrateError {
10551054
path.display(),
10561055
));
10571056
}
1058-
sess.emit_err(NoCrateWithTriple {
1057+
sess.emit_err(errors::NoCrateWithTriple {
10591058
span,
10601059
crate_name,
10611060
locator_triple: locator.triple.triple(),
@@ -1071,7 +1070,12 @@ impl CrateError {
10711070
path.display()
10721071
));
10731072
}
1074-
sess.emit_err(FoundStaticlib { span, crate_name, add_info, found_crates });
1073+
sess.emit_err(errors::FoundStaticlib {
1074+
span,
1075+
crate_name,
1076+
add_info,
1077+
found_crates,
1078+
});
10751079
} else if !locator.crate_rejections.via_version.is_empty() {
10761080
let mismatches = locator.crate_rejections.via_version.iter();
10771081
for CrateMismatch { path, got } in mismatches {
@@ -1082,7 +1086,7 @@ impl CrateError {
10821086
path.display(),
10831087
));
10841088
}
1085-
sess.emit_err(IncompatibleRustc {
1089+
sess.emit_err(errors::IncompatibleRustc {
10861090
span,
10871091
crate_name,
10881092
add_info,
@@ -1094,14 +1098,14 @@ impl CrateError {
10941098
for CrateMismatch { path: _, got } in locator.crate_rejections.via_invalid {
10951099
crate_rejections.push(got);
10961100
}
1097-
sess.emit_err(InvalidMetadataFiles {
1101+
sess.emit_err(errors::InvalidMetadataFiles {
10981102
span,
10991103
crate_name,
11001104
add_info,
11011105
crate_rejections,
11021106
});
11031107
} else {
1104-
sess.emit_err(CannotFindCrate {
1108+
sess.emit_err(errors::CannotFindCrate {
11051109
span,
11061110
crate_name,
11071111
add_info,
@@ -1118,7 +1122,7 @@ impl CrateError {
11181122
}
11191123
}
11201124
CrateError::NonDylibPlugin(crate_name) => {
1121-
sess.emit_err(NoDylibPlugin { span, crate_name });
1125+
sess.emit_err(errors::NoDylibPlugin { span, crate_name });
11221126
}
11231127
}
11241128
}

0 commit comments

Comments
 (0)