summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJohn Hodge <tpg@ucc.asn.au>2017-09-02 11:26:29 +0800
committerJohn Hodge <tpg@ucc.asn.au>2017-09-02 11:26:29 +0800
commit01c0d4e198e2d6671ff3db19f977d088af4ecb15 (patch)
treed4073f835b5ae3ca29401283616f575e967f0f30
parentcfd35bf0d66ab505e9310b07e9b4b241388d1dbf (diff)
downloadmrust-01c0d4e198e2d6671ff3db19f977d088af4ecb15.tar.gz
HIR Typecheck - Don't panic on excessive asociated type loops, just break early
-rw-r--r--src/hir_typeck/expr_cs.cpp6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/hir_typeck/expr_cs.cpp b/src/hir_typeck/expr_cs.cpp
index e63a39b5..fff42abe 100644
--- a/src/hir_typeck/expr_cs.cpp
+++ b/src/hir_typeck/expr_cs.cpp
@@ -6016,7 +6016,11 @@ void Typecheck_Code_CS(const typeck::ModuleState& ms, t_args& args, const ::HIR:
i ++;
}
- ASSERT_BUG(Span(), link_assoc_iter_limit -- > 0, "link_assoc iteration limit exceeded");
+ if( link_assoc_iter_limit -- == 0 )
+ {
+ DEBUG("link_assoc iteration limit exceeded");
+ break;
+ }
}
// 4. Revisit nodes that require revisiting
DEBUG("--- Node revisits");