From 26630187920a8b3f1b2f2d73f0172addd6c35ccd Mon Sep 17 00:00:00 2001 From: Patrick Walton Date: Wed, 28 Mar 2012 20:37:55 -0700 Subject: [PATCH] rustc: Fix an infinite loop during size calculations for recursive region pointer types --- src/rustc/middle/trans/shape.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/rustc/middle/trans/shape.rs b/src/rustc/middle/trans/shape.rs index 3786dbd4e9e..15c8247b9a8 100644 --- a/src/rustc/middle/trans/shape.rs +++ b/src/rustc/middle/trans/shape.rs @@ -632,7 +632,7 @@ fn simplify_type(tcx: ty::ctxt, typ: ty::t) -> ty::t { fn simplifier(tcx: ty::ctxt, typ: ty::t) -> ty::t { alt ty::get(typ).struct { ty::ty_box(_) | ty::ty_opaque_box | ty::ty_uniq(_) | ty::ty_vec(_) | - ty::ty_ptr(_) { nilptr(tcx) } + ty::ty_ptr(_) | ty::ty_rptr(_,_) { nilptr(tcx) } ty::ty_fn(_) { ty::mk_tup(tcx, [nilptr(tcx), nilptr(tcx)]) } ty::ty_res(_, sub, tps) { let sub1 = ty::substitute_type_params(tcx, tps, sub);