Skip to content

Version v2021.5.1 Semantic Textmate Scope is incorrect for negative numeric literals, when used as a parameter #207

Open
@ninmonkey

Description

@ninmonkey

"editor.semanticHighlighting.enabled": true is on

System Details

System Details (Click to Expand)

System Details Output

### VSCode version: 1.56.2 054a9295330880ed74ceaedda236253b4f39a335 x64

### VSCode extensions:
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]


### PSES version: 2.3.0.0

### PowerShell version:

Name                           Value
----                           -----
PSVersion                      7.1.2
PSEdition                      Core
GitCommitId                    7.1.2
OS                             Microsoft Windows 10.0.19041
Platform                       Win32NT
PSCompatibleVersions           {1.0, 2.0, 3.0, 4.0…}
PSRemotingProtocolVersion      2.3
SerializationVersion           1.1.0.1
WSManStackVersion              3.0

Issue Description

The Textmate scopes or token is wrong on negative numeric literals

image

Working behavior

Non-parameters, and positive numbers are okay

textmate_scopes-example1

Expected Behaviour

To share similar tokens/scopes

To reproduce

It seems to occur when:

  1. it's a negative numeric literal (int, or decimal)
  2. it's a parameter
  3. the parameter type doesn't matter

Code used:

function DoNothing {
    param(
        [Parameter(Mandatory, Position = 0)]
        [int]$Number
    )
}
function DoMoreNothing {
    param(
        [Parameter(Mandatory, Position = 0)]
        [string]$Text
    )
}

$x = 6                                               ; $x
$x = -6
DoNothing -6
DoNothing 6
DoNothing -Number 6
DoNothing -Number -6
DoMoreNothing -Text 6
DoMoreNothing -Text -6

Actual Behavior

textmate_scopes-example2-as-parameter

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions