diff --git a/CHANGELOG.md b/CHANGELOG.md index 16f798216..812bacb45 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -40,6 +40,7 @@ - Highlight `catch` like a keyword https://github.com/rescript-lang/rescript-vscode/pull/677 - Make signature help work in calls nested inside of other calls. https://github.com/rescript-lang/rescript-vscode/pull/687 - Fix pipe completion to work on aliased types. https://github.com/rescript-lang/rescript-vscode/pull/700 +- Fix issue with not finding type for function arguments. https://github.com/rescript-lang/rescript-vscode/pull/706 ## v1.10.0 diff --git a/analysis/src/LocalTables.ml b/analysis/src/LocalTables.ml index 772d5c815..5a5bdb0c2 100644 --- a/analysis/src/LocalTables.ml +++ b/analysis/src/LocalTables.ml @@ -26,7 +26,7 @@ let populateValues ~env localTables = env.QueryEnv.file.stamps |> Stamps.iterValues (fun _ declared -> Hashtbl.replace localTables.valueTable - (declared.name.txt, declared.extentLoc |> Loc.start) + (declared.name.txt, declared.name.loc |> Loc.start) declared) let populateConstructors ~env localTables = diff --git a/analysis/tests/src/CompletionFunctionArguments.res b/analysis/tests/src/CompletionFunctionArguments.res index 39e9079ba..2b8754881 100644 --- a/analysis/tests/src/CompletionFunctionArguments.res +++ b/analysis/tests/src/CompletionFunctionArguments.res @@ -89,3 +89,27 @@ let fnTakingRecord = (r: someRecord) => { // let _ = fnTakingRecord({}) // ^com + +module FineModule = { + type t = { + online: bool, + somethingElse: string, + } + + let setToFalse = (t: t) => { + ...t, + online: false, + } +} + +let _ = +
{ + let reassignedWorks = thisGetsBrokenLoc + ignore(reassignedWorks) + // thisGetsBrokenLoc->a + // ^com + // reassignedWorks->a + // ^com + }} + /> diff --git a/analysis/tests/src/expected/CompletionFunctionArguments.res.txt b/analysis/tests/src/expected/CompletionFunctionArguments.res.txt index a52989fa8..2f25a539a 100644 --- a/analysis/tests/src/expected/CompletionFunctionArguments.res.txt +++ b/analysis/tests/src/expected/CompletionFunctionArguments.res.txt @@ -296,3 +296,35 @@ Completable: Cexpression CArgument Value[fnTakingRecord]($0)->recordBody "documentation": null }] +Complete src/CompletionFunctionArguments.res 109:29 +posCursor:[109:29] posNoWhite:[109:28] Found expr:[105:3->114:4] +JSX 105:6] onMouseDown[106:4->106:15]=...[106:35->113:5]> _children:114:2 +posCursor:[109:29] posNoWhite:[109:28] Found expr:[106:35->113:5] +posCursor:[109:29] posNoWhite:[109:28] Found expr:[107:6->109:29] +posCursor:[109:29] posNoWhite:[109:28] Found expr:[108:6->109:29] +posCursor:[109:29] posNoWhite:[109:28] Found expr:[109:9->109:29] +Completable: Cpath Value[thisGetsBrokenLoc]->a <> +[{ + "label": "ReactEvent.Mouse.altKey", + "kind": 12, + "tags": [], + "detail": "t => bool", + "documentation": null + }] + +Complete src/CompletionFunctionArguments.res 111:27 +posCursor:[111:27] posNoWhite:[111:26] Found expr:[105:3->114:4] +JSX 105:6] onMouseDown[106:4->106:15]=...[106:35->113:5]> _children:114:2 +posCursor:[111:27] posNoWhite:[111:26] Found expr:[106:35->113:5] +posCursor:[111:27] posNoWhite:[111:26] Found expr:[107:6->111:27] +posCursor:[111:27] posNoWhite:[111:26] Found expr:[108:6->111:27] +posCursor:[111:27] posNoWhite:[111:26] Found expr:[111:9->111:27] +Completable: Cpath Value[reassignedWorks]->a <> +[{ + "label": "ReactEvent.Mouse.altKey", + "kind": 12, + "tags": [], + "detail": "t => bool", + "documentation": null + }] +