Fix an ICE when dereferencing types which cannot be dereferenced
This commit is contained in:
parent
8b3c09a103
commit
be9f4ef65f
@ -413,12 +413,9 @@ fn constrain_derefs(rcx: @mut Rcx,
|
||||
|
||||
match ty::deref(tcx, derefd_ty, true) {
|
||||
Some(mt) => derefd_ty = mt.ty,
|
||||
None => {
|
||||
tcx.sess.span_bug(
|
||||
deref_expr.span,
|
||||
fmt!("%?'th deref is of a non-deref'able type `%s`",
|
||||
i, rcx.fcx.infcx().ty_to_str(derefd_ty)));
|
||||
}
|
||||
/* if this type can't be dereferenced, then there's already an error
|
||||
in the session saying so. Just bail out for now */
|
||||
None => break
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -8,9 +8,8 @@
|
||||
// option. This file may not be copied, modified, or distributed
|
||||
// except according to those terms.
|
||||
|
||||
// error-pattern:cannot be dereferenced
|
||||
fn main() {
|
||||
match *1 {
|
||||
match *1 { //~ ERROR: cannot be dereferenced
|
||||
_ => { fail!(); }
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user