Skip to content

[R21] Disambiguate generated receive events for overloaded messages - #25

Open
JetF0x wants to merge 1 commit into
Carsillas:rewritefrom
JetF0x:fix/review-r21
Open

JetF0x wants to merge 1 commit into
Carsillas:rewritefrom
JetF0x:fix/review-r21

Conversation

@JetF0x

@JetF0x JetF0x commented Sep 12, 2026

Copy link
Copy Markdown

Addresses review finding R21.

Default RPC and broadcast overloads such as Update(int) and Update(string) previously emitted duplicate receive events and delegates. Qualify conflicting receive symbols with their existing signature-based message IDs, preserve single-method and explicit receive APIs, and retain inherited receive names, including interfaces in older compiled libraries. Document the subscription names in the README.

Validation: dotnet test Cat.Network.sln -c Release --no-restore --nologo passes all 250 tests (155 runtime, 53 analyzer, 42 generator), including 22 new overload cases that run the analyzer and generator together and dispatch both overloads to distinct handlers. The original regressions failed before the fix; wire IDs and explicit handlers remain unchanged.

Composition with #24: use ReceiveName for generated event/delegate/raise stems while retaining #24's escaped Identifier for send/explicit method names and its scoped local-name allocation.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant