Skip to content

Commit 34a5ea9

Browse files
committed
Auto merge of rust-lang#136878 - matthiaskrgr:rollup-opilhjv, r=matthiaskrgr
Rollup of 8 pull requests Successful merges: - rust-lang#135285 (it-self → itself, build-system → build system, type-alias → type alias) - rust-lang#135677 (Small `rustc_resolve` cleanups) - rust-lang#136239 (show supported register classes in error message) - rust-lang#136246 (include note on variance and example) - rust-lang#136354 (Update docs for impl keyword) - rust-lang#136786 (Remove the deduplicate_blocks pass) - rust-lang#136833 (compiler: die immediately instead of handling unknown target codegen) - rust-lang#136847 (Simplify intra-crate qualifiers.) r? `@ghost` `@rustbot` modify labels: rollup
2 parents 92bedea + 89ee41c commit 34a5ea9

File tree

46 files changed

+225
-556
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

46 files changed

+225
-556
lines changed

compiler/rustc_ast_lowering/messages.ftl

+2-1
Original file line numberDiff line numberDiff line change
@@ -112,7 +112,8 @@ ast_lowering_invalid_register =
112112
invalid register `{$reg}`: {$error}
113113
114114
ast_lowering_invalid_register_class =
115-
invalid register class `{$reg_class}`: {$error}
115+
invalid register class `{$reg_class}`: unknown register class
116+
.note = the following register classes are supported on this target: {$supported_register_classes}
116117
117118
ast_lowering_match_arm_with_no_body =
118119
`match` arm with no body

compiler/rustc_ast_lowering/src/asm.rs

+7-2
Original file line numberDiff line numberDiff line change
@@ -152,11 +152,16 @@ impl<'a, 'hir> LoweringContext<'a, 'hir> {
152152
InlineAsmRegOrRegClass::RegClass(reg_class) => {
153153
asm::InlineAsmRegOrRegClass::RegClass(if let Some(asm_arch) = asm_arch {
154154
asm::InlineAsmRegClass::parse(asm_arch, reg_class).unwrap_or_else(
155-
|error| {
155+
|supported_register_classes| {
156+
let mut register_classes =
157+
format!("`{}`", supported_register_classes[0]);
158+
for m in &supported_register_classes[1..] {
159+
let _ = write!(register_classes, ", `{m}`");
160+
}
156161
self.dcx().emit_err(InvalidRegisterClass {
157162
op_span: *op_sp,
158163
reg_class,
159-
error,
164+
supported_register_classes: register_classes,
160165
});
161166
asm::InlineAsmRegClass::Err
162167
},

compiler/rustc_ast_lowering/src/errors.rs

+3-2
Original file line numberDiff line numberDiff line change
@@ -197,12 +197,13 @@ pub(crate) struct InvalidRegister<'a> {
197197
}
198198

199199
#[derive(Diagnostic)]
200+
#[note]
200201
#[diag(ast_lowering_invalid_register_class)]
201-
pub(crate) struct InvalidRegisterClass<'a> {
202+
pub(crate) struct InvalidRegisterClass {
202203
#[primary_span]
203204
pub op_span: Span,
204205
pub reg_class: Symbol,
205-
pub error: &'a str,
206+
pub supported_register_classes: String,
206207
}
207208

208209
#[derive(Diagnostic)]

compiler/rustc_codegen_gcc/src/int.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -400,7 +400,7 @@ impl<'a, 'gcc, 'tcx> Builder<'a, 'gcc, 'tcx> {
400400
conv: Conv::C,
401401
can_unwind: false,
402402
};
403-
fn_abi.adjust_for_foreign_abi(self.cx, ExternAbi::C { unwind: false }).unwrap();
403+
fn_abi.adjust_for_foreign_abi(self.cx, ExternAbi::C { unwind: false });
404404

405405
let ret_indirect = matches!(fn_abi.ret.mode, PassMode::Indirect { .. });
406406

compiler/rustc_const_eval/src/errors.rs

-10
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,6 @@ use rustc_middle::mir::interpret::{
1616
};
1717
use rustc_middle::ty::{self, Mutability, Ty};
1818
use rustc_span::{Span, Symbol};
19-
use rustc_target::callconv::AdjustForForeignAbiError;
2019

2120
use crate::interpret::InternKind;
2221

@@ -936,9 +935,6 @@ impl<'tcx> ReportErrorExt for InvalidProgramInfo<'tcx> {
936935
InvalidProgramInfo::TooGeneric => const_eval_too_generic,
937936
InvalidProgramInfo::AlreadyReported(_) => const_eval_already_reported,
938937
InvalidProgramInfo::Layout(e) => e.diagnostic_message(),
939-
InvalidProgramInfo::FnAbiAdjustForForeignAbi(_) => {
940-
rustc_middle::error::middle_adjust_for_foreign_abi_error
941-
}
942938
}
943939
}
944940
fn add_args<G: EmissionGuarantee>(self, diag: &mut Diag<'_, G>) {
@@ -953,12 +949,6 @@ impl<'tcx> ReportErrorExt for InvalidProgramInfo<'tcx> {
953949
}
954950
dummy_diag.cancel();
955951
}
956-
InvalidProgramInfo::FnAbiAdjustForForeignAbi(
957-
AdjustForForeignAbiError::Unsupported { arch, abi },
958-
) => {
959-
diag.arg("arch", arch);
960-
diag.arg("abi", abi.name());
961-
}
962952
}
963953
}
964954
}

compiler/rustc_const_eval/src/interpret/eval_context.rs

-3
Original file line numberDiff line numberDiff line change
@@ -106,9 +106,6 @@ impl<'tcx, M: Machine<'tcx>> FnAbiOfHelpers<'tcx> for InterpCx<'tcx, M> {
106106
) -> InterpErrorKind<'tcx> {
107107
match err {
108108
FnAbiError::Layout(err) => err_inval!(Layout(err)),
109-
FnAbiError::AdjustForForeignAbi(err) => {
110-
err_inval!(FnAbiAdjustForForeignAbi(err))
111-
}
112109
}
113110
}
114111
}

compiler/rustc_errors/src/diagnostic_impls.rs

+2-2
Original file line numberDiff line numberDiff line change
@@ -108,13 +108,13 @@ impl<I: rustc_type_ir::Interner> IntoDiagArg for rustc_type_ir::ExistentialTrait
108108
}
109109

110110
impl<I: rustc_type_ir::Interner> IntoDiagArg for rustc_type_ir::UnevaluatedConst<I> {
111-
fn into_diag_arg(self) -> rustc_errors::DiagArgValue {
111+
fn into_diag_arg(self) -> DiagArgValue {
112112
format!("{self:?}").into_diag_arg()
113113
}
114114
}
115115

116116
impl<I: rustc_type_ir::Interner> IntoDiagArg for rustc_type_ir::FnSig<I> {
117-
fn into_diag_arg(self) -> rustc_errors::DiagArgValue {
117+
fn into_diag_arg(self) -> DiagArgValue {
118118
format!("{self:?}").into_diag_arg()
119119
}
120120
}

compiler/rustc_middle/src/hir/map/mod.rs

+1-2
Original file line numberDiff line numberDiff line change
@@ -10,11 +10,10 @@ use rustc_hir::definitions::{DefKey, DefPath, DefPathHash};
1010
use rustc_hir::intravisit::Visitor;
1111
use rustc_hir::*;
1212
use rustc_hir_pretty as pprust_hir;
13-
use rustc_middle::hir::nested_filter;
1413
use rustc_span::def_id::StableCrateId;
1514
use rustc_span::{ErrorGuaranteed, Ident, Span, Symbol, kw, sym, with_metavar_spans};
1615

17-
use crate::hir::ModuleItems;
16+
use crate::hir::{ModuleItems, nested_filter};
1817
use crate::middle::debugger_visualizer::DebuggerVisualizerFile;
1918
use crate::query::LocalCrate;
2019
use crate::ty::TyCtxt;

compiler/rustc_middle/src/middle/stability.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,6 @@ use rustc_feature::GateIssue;
1313
use rustc_hir::def_id::{DefId, LocalDefId, LocalDefIdMap};
1414
use rustc_hir::{self as hir, HirId};
1515
use rustc_macros::{Decodable, Encodable, HashStable, Subdiagnostic};
16-
use rustc_middle::ty::print::with_no_trimmed_paths;
1716
use rustc_session::Session;
1817
use rustc_session::lint::builtin::{DEPRECATED, DEPRECATED_IN_FUTURE, SOFT_UNSTABLE};
1918
use rustc_session::lint::{BuiltinLintDiag, DeprecatedSinceKind, Level, Lint, LintBuffer};
@@ -23,6 +22,7 @@ use tracing::debug;
2322

2423
pub use self::StabilityLevel::*;
2524
use crate::ty::TyCtxt;
25+
use crate::ty::print::with_no_trimmed_paths;
2626

2727
#[derive(PartialEq, Clone, Copy, Debug)]
2828
pub enum StabilityLevel {

compiler/rustc_middle/src/mir/generic_graph.rs

+2-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
use gsgdt::{Edge, Graph, Node, NodeStyle};
2-
use rustc_middle::mir::*;
2+
3+
use crate::mir::*;
34

45
/// Convert an MIR function into a gsgdt Graph
56
pub(crate) fn mir_fn_to_generic_graph<'tcx>(tcx: TyCtxt<'tcx>, body: &Body<'_>) -> Graph {

compiler/rustc_middle/src/mir/generic_graphviz.rs

+2-1
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,8 @@ use std::io::{self, Write};
22

33
use rustc_data_structures::graph::{self, iterate};
44
use rustc_graphviz as dot;
5-
use rustc_middle::ty::TyCtxt;
5+
6+
use crate::ty::TyCtxt;
67

78
pub struct GraphvizWriter<
89
'a,

compiler/rustc_middle/src/mir/graphviz.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -2,10 +2,10 @@ use std::io::{self, Write};
22

33
use gsgdt::GraphvizSettings;
44
use rustc_graphviz as dot;
5-
use rustc_middle::mir::*;
65

76
use super::generic_graph::mir_fn_to_generic_graph;
87
use super::pretty::dump_mir_def_ids;
8+
use crate::mir::*;
99

1010
/// Write a graphviz DOT graph of a list of MIRs.
1111
pub fn write_mir_graphviz<W>(tcx: TyCtxt<'_>, single: Option<DefId>, w: &mut W) -> io::Result<()>

compiler/rustc_middle/src/mir/interpret/error.rs

-4
Original file line numberDiff line numberDiff line change
@@ -216,10 +216,6 @@ pub enum InvalidProgramInfo<'tcx> {
216216
AlreadyReported(ReportedErrorInfo),
217217
/// An error occurred during layout computation.
218218
Layout(layout::LayoutError<'tcx>),
219-
/// An error occurred during FnAbi computation: the passed --target lacks FFI support
220-
/// (which unfortunately typeck does not reject).
221-
/// Not using `FnAbiError` as that contains a nested `LayoutError`.
222-
FnAbiAdjustForForeignAbi(rustc_target::callconv::AdjustForForeignAbiError),
223219
}
224220

225221
/// Details of why a pointer had to be in-bounds.

compiler/rustc_middle/src/mir/interpret/mod.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,6 @@ use rustc_data_structures::sync::{AtomicU64, Lock};
2020
use rustc_hir::def::DefKind;
2121
use rustc_hir::def_id::{DefId, LocalDefId};
2222
use rustc_macros::{HashStable, TyDecodable, TyEncodable, TypeFoldable, TypeVisitable};
23-
use rustc_middle::ty::print::with_no_trimmed_paths;
2423
use rustc_serialize::{Decodable, Encodable};
2524
use tracing::{debug, trace};
2625
// Also make the error macros available from this module.
@@ -46,6 +45,7 @@ pub use self::pointer::{CtfeProvenance, Pointer, PointerArithmetic, Provenance};
4645
pub use self::value::Scalar;
4746
use crate::mir;
4847
use crate::ty::codec::{TyDecoder, TyEncoder};
48+
use crate::ty::print::with_no_trimmed_paths;
4949
use crate::ty::{self, Instance, Ty, TyCtxt};
5050

5151
/// Uniquely identifies one of the following:

compiler/rustc_middle/src/mir/patch.rs

+2-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
1-
use rustc_middle::mir::*;
21
use tracing::debug;
32

3+
use crate::mir::*;
4+
45
/// This struct represents a patch to MIR, which can add
56
/// new statements and basic blocks and patch over block
67
/// terminators.

compiler/rustc_middle/src/mir/pretty.rs

+6-7
Original file line numberDiff line numberDiff line change
@@ -5,17 +5,16 @@ use std::{fs, io};
55

66
use rustc_abi::Size;
77
use rustc_ast::InlineAsmTemplatePiece;
8-
use rustc_middle::mir::interpret::{
9-
AllocBytes, AllocId, Allocation, GlobalAlloc, Pointer, Provenance, alloc_range,
10-
read_target_uint,
11-
};
12-
use rustc_middle::mir::visit::Visitor;
13-
use rustc_middle::mir::*;
148
use tracing::trace;
159
use ty::print::PrettyPrinter;
1610

1711
use super::graphviz::write_mir_fn_graphviz;
18-
use crate::mir::interpret::ConstAllocation;
12+
use crate::mir::interpret::{
13+
AllocBytes, AllocId, Allocation, ConstAllocation, GlobalAlloc, Pointer, Provenance,
14+
alloc_range, read_target_uint,
15+
};
16+
use crate::mir::visit::Visitor;
17+
use crate::mir::*;
1918

2019
const INDENT: &str = " ";
2120
/// Alignment for lining up comments following MIR statements

compiler/rustc_middle/src/query/erase.rs

+2-2
Original file line numberDiff line numberDiff line change
@@ -101,9 +101,9 @@ impl<T> EraseType for Result<&'_ T, &'_ ty::layout::FnAbiError<'_>> {
101101
type Result = [u8; size_of::<Result<&'static (), &'static ty::layout::FnAbiError<'static>>>()];
102102
}
103103

104-
impl<T> EraseType for Result<(&'_ T, rustc_middle::thir::ExprId), rustc_errors::ErrorGuaranteed> {
104+
impl<T> EraseType for Result<(&'_ T, crate::thir::ExprId), rustc_errors::ErrorGuaranteed> {
105105
type Result = [u8; size_of::<
106-
Result<(&'static (), rustc_middle::thir::ExprId), rustc_errors::ErrorGuaranteed>,
106+
Result<(&'static (), crate::thir::ExprId), rustc_errors::ErrorGuaranteed>,
107107
>()];
108108
}
109109

compiler/rustc_middle/src/query/on_disk_cache.rs

+8-7
Original file line numberDiff line numberDiff line change
@@ -11,12 +11,6 @@ use rustc_hir::def_id::{CrateNum, DefId, DefIndex, LOCAL_CRATE, LocalDefId, Stab
1111
use rustc_hir::definitions::DefPathHash;
1212
use rustc_index::{Idx, IndexVec};
1313
use rustc_macros::{Decodable, Encodable};
14-
use rustc_middle::dep_graph::{DepNodeIndex, SerializedDepNodeIndex};
15-
use rustc_middle::mir::interpret::{AllocDecodingSession, AllocDecodingState};
16-
use rustc_middle::mir::mono::MonoItem;
17-
use rustc_middle::mir::{self, interpret};
18-
use rustc_middle::ty::codec::{RefDecodable, TyDecoder, TyEncoder};
19-
use rustc_middle::ty::{self, Ty, TyCtxt};
2014
use rustc_query_system::query::QuerySideEffects;
2115
use rustc_serialize::opaque::{FileEncodeResult, FileEncoder, IntEncodedWithFixedSize, MemDecoder};
2216
use rustc_serialize::{Decodable, Decoder, Encodable, Encoder};
@@ -30,6 +24,13 @@ use rustc_span::{
3024
SpanDecoder, SpanEncoder, StableSourceFileId, Symbol,
3125
};
3226

27+
use crate::dep_graph::{DepNodeIndex, SerializedDepNodeIndex};
28+
use crate::mir::interpret::{AllocDecodingSession, AllocDecodingState};
29+
use crate::mir::mono::MonoItem;
30+
use crate::mir::{self, interpret};
31+
use crate::ty::codec::{RefDecodable, TyDecoder, TyEncoder};
32+
use crate::ty::{self, Ty, TyCtxt};
33+
3334
const TAG_FILE_FOOTER: u128 = 0xC0FFEE_C0FFEE_C0FFEE_C0FFEE_C0FFEE;
3435

3536
// A normal span encoded with both location information and a `SyntaxContext`
@@ -563,7 +564,7 @@ impl<'a, 'tcx> TyDecoder for CacheDecoder<'a, 'tcx> {
563564
}
564565
}
565566

566-
rustc_middle::implement_ty_decoder!(CacheDecoder<'a, 'tcx>);
567+
crate::implement_ty_decoder!(CacheDecoder<'a, 'tcx>);
567568

568569
// This ensures that the `Decodable<opaque::Decoder>::decode` specialization for `Vec<u8>` is used
569570
// when a `CacheDecoder` is passed to `Decodable::decode`. Unfortunately, we have to manually opt

compiler/rustc_middle/src/thir.rs

+10-9
Original file line numberDiff line numberDiff line change
@@ -20,20 +20,21 @@ use rustc_hir::def_id::DefId;
2020
use rustc_hir::{BindingMode, ByRef, HirId, MatchSource, RangeEnd};
2121
use rustc_index::{IndexVec, newtype_index};
2222
use rustc_macros::{HashStable, TypeVisitable};
23-
use rustc_middle::middle::region;
24-
use rustc_middle::mir::interpret::AllocId;
25-
use rustc_middle::mir::{self, BinOp, BorrowKind, FakeReadCause, UnOp};
26-
use rustc_middle::ty::adjustment::PointerCoercion;
27-
use rustc_middle::ty::layout::IntegerExt;
28-
use rustc_middle::ty::{
29-
self, AdtDef, CanonicalUserType, CanonicalUserTypeAnnotation, FnSig, GenericArgsRef, List, Ty,
30-
TyCtxt, UpvarArgs,
31-
};
3223
use rustc_span::def_id::LocalDefId;
3324
use rustc_span::{ErrorGuaranteed, Span, Symbol};
3425
use rustc_target::asm::InlineAsmRegOrRegClass;
3526
use tracing::instrument;
3627

28+
use crate::middle::region;
29+
use crate::mir::interpret::AllocId;
30+
use crate::mir::{self, BinOp, BorrowKind, FakeReadCause, UnOp};
31+
use crate::ty::adjustment::PointerCoercion;
32+
use crate::ty::layout::IntegerExt;
33+
use crate::ty::{
34+
self, AdtDef, CanonicalUserType, CanonicalUserTypeAnnotation, FnSig, GenericArgsRef, List, Ty,
35+
TyCtxt, UpvarArgs,
36+
};
37+
3738
pub mod visit;
3839

3940
macro_rules! thir_with_elements {

compiler/rustc_middle/src/ty/cast.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,8 @@
22
// typeck and codegen.
33

44
use rustc_macros::{HashStable, TyDecodable, TyEncodable};
5-
use rustc_middle::mir;
65

6+
use crate::mir;
77
use crate::ty::{self, Ty};
88

99
/// Types that are represented as ints.

compiler/rustc_middle/src/ty/codec.rs

+2-3
Original file line numberDiff line numberDiff line change
@@ -13,8 +13,6 @@ use std::marker::DiscriminantKind;
1313
use rustc_abi::{FieldIdx, VariantIdx};
1414
use rustc_data_structures::fx::FxHashMap;
1515
use rustc_hir::def_id::LocalDefId;
16-
use rustc_middle::mir::mono::MonoItem;
17-
use rustc_middle::ty::TyCtxt;
1816
use rustc_serialize::{Decodable, Encodable};
1917
use rustc_span::Span;
2018
use rustc_span::source_map::Spanned;
@@ -23,9 +21,10 @@ pub use rustc_type_ir::{TyDecoder, TyEncoder};
2321
use crate::arena::ArenaAllocatable;
2422
use crate::infer::canonical::{CanonicalVarInfo, CanonicalVarInfos};
2523
use crate::mir::interpret::{AllocId, ConstAllocation, CtfeProvenance};
24+
use crate::mir::mono::MonoItem;
2625
use crate::mir::{self};
2726
use crate::traits;
28-
use crate::ty::{self, AdtDef, GenericArgsRef, Ty};
27+
use crate::ty::{self, AdtDef, GenericArgsRef, Ty, TyCtxt};
2928

3029
/// The shorthand encoding uses an enum's variant index `usize`
3130
/// and is offset by this value so it never matches a real variant.

compiler/rustc_middle/src/ty/instance.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -10,13 +10,13 @@ use rustc_hir::def_id::{CrateNum, DefId};
1010
use rustc_hir::lang_items::LangItem;
1111
use rustc_index::bit_set::FiniteBitSet;
1212
use rustc_macros::{Decodable, Encodable, HashStable, Lift, TyDecodable, TyEncodable};
13-
use rustc_middle::ty::normalize_erasing_regions::NormalizationError;
1413
use rustc_span::def_id::LOCAL_CRATE;
1514
use rustc_span::{DUMMY_SP, Span, Symbol};
1615
use tracing::{debug, instrument};
1716

1817
use crate::error;
1918
use crate::middle::codegen_fn_attrs::CodegenFnAttrFlags;
19+
use crate::ty::normalize_erasing_regions::NormalizationError;
2020
use crate::ty::print::{FmtPrinter, Printer, shrunk_instance_name};
2121
use crate::ty::{
2222
self, EarlyBinder, GenericArgs, GenericArgsRef, Ty, TyCtxt, TypeFoldable, TypeSuperVisitable,

compiler/rustc_middle/src/ty/layout.rs

-7
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,6 @@ use rustc_target::spec::{
2424
use tracing::debug;
2525
use {rustc_abi as abi, rustc_hir as hir};
2626

27-
use crate::error::UnsupportedFnAbi;
2827
use crate::middle::codegen_fn_attrs::CodegenFnAttrFlags;
2928
use crate::query::TyCtxtAt;
3029
use crate::ty::normalize_erasing_regions::NormalizationError;
@@ -1275,18 +1274,12 @@ pub fn fn_can_unwind(tcx: TyCtxt<'_>, fn_def_id: Option<DefId>, abi: ExternAbi)
12751274
pub enum FnAbiError<'tcx> {
12761275
/// Error produced by a `layout_of` call, while computing `FnAbi` initially.
12771276
Layout(LayoutError<'tcx>),
1278-
1279-
/// Error produced by attempting to adjust a `FnAbi`, for a "foreign" ABI.
1280-
AdjustForForeignAbi(rustc_target::callconv::AdjustForForeignAbiError),
12811277
}
12821278

12831279
impl<'a, 'b, G: EmissionGuarantee> Diagnostic<'a, G> for FnAbiError<'b> {
12841280
fn into_diag(self, dcx: DiagCtxtHandle<'a>, level: Level) -> Diag<'a, G> {
12851281
match self {
12861282
Self::Layout(e) => e.into_diagnostic().into_diag(dcx, level),
1287-
Self::AdjustForForeignAbi(
1288-
rustc_target::callconv::AdjustForForeignAbiError::Unsupported { arch, abi },
1289-
) => UnsupportedFnAbi { arch, abi: abi.name() }.into_diag(dcx, level),
12901283
}
12911284
}
12921285
}

compiler/rustc_middle/src/ty/print/pretty.rs

+2-2
Original file line numberDiff line numberDiff line change
@@ -1512,7 +1512,7 @@ pub trait PrettyPrinter<'tcx>: Printer<'tcx> + fmt::Write {
15121512
ty::ExprKind::Binop(op) => {
15131513
let (_, _, c1, c2) = expr.binop_args();
15141514

1515-
let precedence = |binop: rustc_middle::mir::BinOp| {
1515+
let precedence = |binop: crate::mir::BinOp| {
15161516
use rustc_ast::util::parser::AssocOp;
15171517
AssocOp::from_ast_binop(binop.to_hir_binop()).precedence()
15181518
};
@@ -1558,7 +1558,7 @@ pub trait PrettyPrinter<'tcx>: Printer<'tcx> + fmt::Write {
15581558
ty::ExprKind::UnOp(op) => {
15591559
let (_, ct) = expr.unop_args();
15601560

1561-
use rustc_middle::mir::UnOp;
1561+
use crate::mir::UnOp;
15621562
let formatted_op = match op {
15631563
UnOp::Not => "!",
15641564
UnOp::Neg => "-",

0 commit comments

Comments
 (0)