vscode-powershell icon indicating copy to clipboard operation
vscode-powershell copied to clipboard

Go to Definition of function parameter jumps into first function having that parameter

Open kuulemart opened this issue 9 years ago • 3 comments

System Details

  • Operating system name and version: Win10 Anniversary Update
  • VS Code version: 1.7.2
  • PowerShell extension version: 0.7.2
  • Output from $PSVersionTable: Name Value

PSVersion 5.1.14393.206 PSEdition Desktop PSCompatibleVersions {1.0, 2.0, 3.0, 4.0...} BuildVersion 10.0.14393.206 CLRVersion 4.0.30319.42000 WSManStackVersion 3.0 PSRemotingProtocolVersion 2.3 SerializationVersion 1.1.0.1

Evaluate $PSVersionTable in PowerShell and paste the output here

Issue Description

I am experiencing a problem with "Go to Definition" feature. When file has multiple function having parameter with same name, "Go to Definition" jumps to first function declaration, regardless from which function parameter we examined. Testfile:

function f1($a) {
    $a + 1;
}

function f2 {
    param($a)
    $a + 2;
}

function f3 {
    param($a)
    $a + 3;
}

Action: Right click on $a inside f3 and select "Go to Definition" Expected result: editor caret is planced before param $a in function f3 declaration Actual result: editor caret is planced before param $a in function f1 declaration

The result does not depend on how params are defined (param keyword vs inline declaration)

kuulemart avatar Nov 28 '16 14:11 kuulemart

Thanks for the report! I'll take a look.

daviwil avatar Nov 28 '16 14:11 daviwil

This is still happening on the latest build

Version: 1.41.1 (user setup)
Commit: 26076a4de974ead31f97692a0d32f90d735645c0
Date: 2019-12-18T14:58:56.166Z
Electron: 6.1.5
Chrome: 76.0.3809.146
Node.js: 12.4.0
V8: 7.6.303.31-electron.0
OS: Windows_NT x64 10.0.18363

In this sample the $serviceid definition is in GetStatus but the cursor jumps to the same variable in GetService (the first variable in the list)

Z19QxD3bxh

carlocardella avatar Dec 20 '19 22:12 carlocardella

I built a lot of new AST utility functions for the rename provider, one of which can probably fix this issue.

JustinGrote avatar Nov 26 '24 01:11 JustinGrote