Skip to content

Conversation

taminomara
Copy link
Contributor

Fix #462.

Due to renames, PR's diff is a mess. The significant changes are in the first commit, the rest are just renames.

Apart from unions and intersections I've found two places where the logic differs:

  1. infer_type_doc_function didn't handle self substitutions,
  2. infer_signature_doc_function didn't defer inference to unresolve stage.

Additionally, there are two more significant changes:

  1. infer_call_expr now commits inference to cache, so that diagnostics can reuse the results,
  2. inferred return type gets adjusted with unwrapp_return_type before it is committed.

Other that that, the functionality should be the same.

@taminomara taminomara force-pushed the call_inference_refactor branch from 8c1681c to 4316392 Compare May 16, 2025 11:11
@CppCXY CppCXY merged commit 7d17409 into EmmyLuaLs:main May 16, 2025
15 checks passed
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.

Unify logic behind infer_call_expr_func infer_call_expr?
2 participants