cgen: fix cross method call + method_call cleanup #20025
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Fix #20012
馃[deprecated] Generated by Copilot at 6243624
This pull request improves the C code generation for method calls in V. It refactors some functions, introduces a new function to resolve the receiver type name, and adds a new test case to cover a previously unhandled scenario. The changes aim to make the code more readable, maintainable, and correct.
馃[deprecated] Generated by Copilot at 6243624
resolve_receiver_type
function tovlib/v/gen/c/assign.v
to get receiver type and symbol from type table (link, link)method_call
function tovlib/v/gen/c/assign.v
to handle method calls in assignments and expressions (link)resolve_receiver_name
function tovlib/v/gen/c/assign.v
to get C name of receiver type for method calls (link)move
method tovlib/v/tests/cross_method_call_test.v
(link)