Skip to content

Prevent generated proxy parameter shadowing - #1737

Merged
kzu merged 1 commit into
mainfrom
dev/proxy-parameter-name-shadowing
Sep 30, 2026
Merged

kzu merged 1 commit into
mainfrom
dev/proxy-parameter-name-shadowing

Conversation

@kzu

@kzu kzu commented Sep 30, 2026

Copy link
Copy Markdown
Member

Summary

-generated call: pipeline.Execute(...)
+generated call: this.pipeline.Execute(...)
+delegate tail/check: this.implementation

Evidence

  • Before: Parameters named pipeline shadowed the generated field, causing object to lack Execute.
    After: dotnet test src\Moq.StaticProxy.UnitTests\Moq.StaticProxy.UnitTests.csproj --no-restore passed all 9 scenarios on net10.0 and net48, including delegate invocation and call-through.

Merge Danger

Door: Two-way

Blast Radius: Local

Qualify pipeline and implementation field references in generated proxies so parameters with matching names cannot hide them.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
@kzu
kzu enabled auto-merge (squash) September 30, 2026 03:58
@kzu

kzu commented Sep 30, 2026

Copy link
Copy Markdown
Member Author

337 passed 337 passed

🧪 Details on Ubuntu 24.04.5 LTS

from retest v1.1.0 on .NET 10.0.12 with 💜 by @devlooped

@kzu
kzu merged commit 7744a15 into main Sep 30, 2026
4 checks passed
@kzu
kzu deleted the dev/proxy-parameter-name-shadowing branch September 30, 2026 04:00
@kzu kzu added the bug label Sep 30, 2026
@kzu kzu changed the title Bug: Prevent generated proxy parameter shadowing Prevent generated proxy parameter shadowing Sep 30, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant