Skip to content

sem: fold deferred plugin calls in overload resolution (v2) - #2576

Open
gmpreussner wants to merge 5 commits into
nim-lang:masterfrom
gmpreussner:overload-template-plug-eval-fix
Open

gmpreussner wants to merge 5 commits into
nim-lang:masterfrom
gmpreussner:overload-template-plug-eval-fix

Conversation

@gmpreussner

Copy link
Copy Markdown
Collaborator

Alternative approach for #2571

Supersedes #2540

Teach expreval to evaluate parked `(pluginCall …)` nodes via executeExpr
once static bindings make their arguments concrete, and delegate from
foldValueExpr so array lengths like `array[twicePlugin(N), T]` match during
sigmatch. Add tstaticparams coverage for plugin vs template overloads.
…ile serialisation.

Stop forcing int in foldValueExpr; untyped/auto plugin results now expand
first and infer their type via executeRetType in expreval.
@gmpreussner gmpreussner changed the title Inline const seq fix (v2) sem: fold deferred plugin calls in overload resolution (v2) Sep 23, 2026
@gmpreussner

Copy link
Copy Markdown
Collaborator Author

@Araq can you check whether this is a better direction and addresses your concerns in #2540 ?

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