Initial fixes on top of type interner commit
This commit is contained in:
parent
a7015fe816
commit
a056a953f0
28 changed files with 171 additions and 134 deletions
|
@ -29,3 +29,4 @@ rustc_trait_selection = { path = "../rustc_trait_selection" }
|
|||
rustc_ty_utils = { path = "../rustc_ty_utils" }
|
||||
rustc_lint = { path = "../rustc_lint" }
|
||||
rustc_serialize = { path = "../rustc_serialize" }
|
||||
rustc_type_ir = { path = "../rustc_type_ir" }
|
||||
|
|
|
@ -12,7 +12,7 @@ use rustc_middle::lint::in_external_macro;
|
|||
use rustc_middle::ty::adjustment::AllowTwoPhase;
|
||||
use rustc_middle::ty::error::{ExpectedFound, TypeError};
|
||||
use rustc_middle::ty::print::with_no_trimmed_paths;
|
||||
use rustc_middle::ty::{self, AssocItem, Ty, TypeAndMut};
|
||||
use rustc_middle::ty::{self, Article, AssocItem, Ty, TypeAndMut};
|
||||
use rustc_span::symbol::{sym, Symbol};
|
||||
use rustc_span::{BytePos, Span};
|
||||
|
||||
|
|
|
@ -4,7 +4,7 @@ use rustc_errors::struct_span_err;
|
|||
use rustc_hir as hir;
|
||||
use rustc_index::vec::Idx;
|
||||
use rustc_middle::ty::layout::{LayoutError, SizeSkeleton};
|
||||
use rustc_middle::ty::{self, FloatTy, InferTy, IntTy, Ty, TyCtxt, TypeFoldable, UintTy};
|
||||
use rustc_middle::ty::{self, FloatTy, InferTy, IntTy, Ty, TyCtxt, TypeFoldable, UintTy, Article};
|
||||
use rustc_session::lint;
|
||||
use rustc_span::{Span, Symbol, DUMMY_SP};
|
||||
use rustc_target::abi::{Pointer, VariantIdx};
|
||||
|
|
|
@ -10,7 +10,6 @@ use rustc_middle::ty::adjustment::{
|
|||
Adjust, Adjustment, AllowTwoPhase, AutoBorrow, AutoBorrowMutability,
|
||||
};
|
||||
use rustc_middle::ty::fold::TypeFolder;
|
||||
use rustc_middle::ty::TyKind::{Adt, Array, Char, FnDef, Never, Ref, Str, Tuple, Uint};
|
||||
use rustc_middle::ty::{self, Ty, TyCtxt, TypeFoldable, TypeVisitor};
|
||||
use rustc_span::source_map::Spanned;
|
||||
use rustc_span::symbol::{sym, Ident};
|
||||
|
@ -18,6 +17,7 @@ use rustc_span::Span;
|
|||
use rustc_trait_selection::infer::InferCtxtExt;
|
||||
use rustc_trait_selection::traits::error_reporting::suggestions::InferCtxtExt as _;
|
||||
use rustc_trait_selection::traits::{FulfillmentError, TraitEngine, TraitEngineExt};
|
||||
use rustc_type_ir::sty::TyKind::*;
|
||||
|
||||
use std::ops::ControlFlow;
|
||||
|
||||
|
@ -677,6 +677,8 @@ impl<'a, 'tcx> FnCtxt<'a, 'tcx> {
|
|||
operand_ty: Ty<'tcx>,
|
||||
op: hir::UnOp,
|
||||
) -> Ty<'tcx> {
|
||||
use rustc_type_ir::sty::TyKind::*;
|
||||
|
||||
assert!(op.is_by_value());
|
||||
match self.lookup_op_method(operand_ty, None, None, Op::Unary(op, ex.span)) {
|
||||
Ok(method) => {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue