about summary refs log tree commit diff
path: root/compiler/rustc_resolve/src
diff options
context:
space:
mode:
authorMichael Goulet <michael@errs.io>2024-07-20 17:58:05 -0400
committerMichael Goulet <michael@errs.io>2024-07-20 19:45:24 -0400
commit3862095bd214a3ebdfb3fbaa4a13eac2ad8de331 (patch)
tree0bcd0cde157f5ffb11fb1512366c1e6685e24642 /compiler/rustc_resolve/src
parent2e6fc425411280c658d852813de01c5157255088 (diff)
downloadrust-3862095bd214a3ebdfb3fbaa4a13eac2ad8de331.tar.gz
rust-3862095bd214a3ebdfb3fbaa4a13eac2ad8de331.zip
Just totally fully deny late-bound consts
Diffstat (limited to 'compiler/rustc_resolve/src')
-rw-r--r--compiler/rustc_resolve/src/late.rs6
1 files changed, 5 insertions, 1 deletions
diff --git a/compiler/rustc_resolve/src/late.rs b/compiler/rustc_resolve/src/late.rs
index dc7200465d9..51414d78596 100644
--- a/compiler/rustc_resolve/src/late.rs
+++ b/compiler/rustc_resolve/src/late.rs
@@ -2763,7 +2763,11 @@ impl<'a: 'ast, 'b, 'ast, 'tcx> LateResolutionVisitor<'a, 'b, 'ast, 'tcx> {
             let res = match kind {
                 RibKind::Item(..) | RibKind::AssocItem => Res::Def(def_kind, def_id.to_def_id()),
                 RibKind::Normal => {
-                    if self.r.tcx.features().non_lifetime_binders {
+                    // FIXME(non_lifetime_binders): Stop special-casing
+                    // const params to error out here.
+                    if self.r.tcx.features().non_lifetime_binders
+                        && matches!(param.kind, GenericParamKind::Type { .. })
+                    {
                         Res::Def(def_kind, def_id.to_def_id())
                     } else {
                         Res::Err