From 1cfd4351aea5469adf7800c268dd8cb1619f4d52 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Le=C3=B3n=20Orell=20Valerian=20Liehr?= Date: Fri, 11 Sep 2026 13:39:02 +0200 Subject: [PATCH] Support receivers in parenthesized generic argument lists (RFC 3955) --- src/cli/diagnostics.rs | 3 --- src/lib/error.rs | 1 - src/lib/parser/path.rs | 11 ----------- 3 files changed, 15 deletions(-) diff --git a/src/cli/diagnostics.rs b/src/cli/diagnostics.rs index 60b76af..90b88b5 100644 --- a/src/cli/diagnostics.rs +++ b/src/cli/diagnostics.rs @@ -40,9 +40,6 @@ impl IntoDiag for Error { ErrorKind::ForbiddenOuterAttrs => { diag.title("outer attributes are forbidden in this context") } - ErrorKind::ForbiddenSelfParams => { - diag.title("self parameters are forbidden in this context") - } ErrorKind::FrontmatterOpeningTooLarge => diag.title("frontmatter opening too large"), ErrorKind::GenericArgsOnFieldExpr => diag.title("generic args on field expression"), ErrorKind::ImplRestrictedTraitAlias => { diff --git a/src/lib/error.rs b/src/lib/error.rs index e4b3eee..1f6577e 100644 --- a/src/lib/error.rs +++ b/src/lib/error.rs @@ -29,7 +29,6 @@ pub enum ErrorKind { ForbiddenCVariadics, ForbiddenInnerAttrs, ForbiddenOuterAttrs, - ForbiddenSelfParams, FrontmatterOpeningTooLarge, GenericArgsOnFieldExpr, ImplRestrictedTraitAlias, diff --git a/src/lib/parser/path.rs b/src/lib/parser/path.rs index 62cede8..cd5d913 100644 --- a/src/lib/parser/path.rs +++ b/src/lib/parser/path.rs @@ -203,17 +203,6 @@ impl<'src> Parser<'_, '_, 'src> { poisoned = true; } - if let ast::Pat::Binding(ast::BindingPat { - mut_: _, - by_ref: ast::ByRef::No, - binder: ast::Ident { name: "self", span }, - pat: None, - }) = pat - { - self.error(ErrorKind::ForbiddenSelfParams, *span); - poisoned = true; - } - if !poisoned && !matches!(pat, ast::Pat::Wildcard(ast::WildcardKind::Empty)) { self.feature_no_span_fixme(Feature::named_fn_trait_parameters); }