about summary refs log tree commit diff
path: root/compiler/rustc_middle/src/error.rs
diff options
context:
space:
mode:
authorbohan <bohan-zhang@foxmail.com>2023-04-02 18:50:01 +0800
committerbohan <bohan-zhang@foxmail.com>2023-04-03 11:08:14 +0800
commitd8a4e7cf51fbdca489084e117050fe2e2c22cb21 (patch)
treeef15d95bbbfb6adef641bc30503079c30e1b8a66 /compiler/rustc_middle/src/error.rs
parenta93bcdc30771340dfff914a1cf48556886ad33a6 (diff)
downloadrust-d8a4e7cf51fbdca489084e117050fe2e2c22cb21.tar.gz
rust-d8a4e7cf51fbdca489084e117050fe2e2c22cb21.zip
fix(middle): emit error rather than delay bug when reaching limit
Diffstat (limited to 'compiler/rustc_middle/src/error.rs')
-rw-r--r--compiler/rustc_middle/src/error.rs8
1 files changed, 8 insertions, 0 deletions
diff --git a/compiler/rustc_middle/src/error.rs b/compiler/rustc_middle/src/error.rs
index 5e94da8cb4d..dc4aa18640f 100644
--- a/compiler/rustc_middle/src/error.rs
+++ b/compiler/rustc_middle/src/error.rs
@@ -50,6 +50,14 @@ pub struct LimitInvalid<'a> {
 }
 
 #[derive(Diagnostic)]
+#[diag(middle_recursion_limit_reached)]
+#[help]
+pub struct RecursionLimitReached<'tcx> {
+    pub ty: Ty<'tcx>,
+    pub suggested_limit: rustc_session::Limit,
+}
+
+#[derive(Diagnostic)]
 #[diag(middle_const_eval_non_int)]
 pub struct ConstEvalNonIntError {
     #[primary_span]