From e5801ecebef59b35bc6876ca8e3bd99d2eb2c7c7 Mon Sep 17 00:00:00 2001 From: Patrick Date: Sat, 3 Feb 2024 22:15:11 +0800 Subject: [PATCH] fix subtraction --- .../src/Ide/Plugin/SemanticTokens/Tokenize.hs | 2 +- .../test/testdata/TOperator.expected | 4 ++-- plugins/hls-semantic-tokens-plugin/test/testdata/TOperator.hs | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/plugins/hls-semantic-tokens-plugin/src/Ide/Plugin/SemanticTokens/Tokenize.hs b/plugins/hls-semantic-tokens-plugin/src/Ide/Plugin/SemanticTokens/Tokenize.hs index 3f79bba3d1..0f98a6ceed 100644 --- a/plugins/hls-semantic-tokens-plugin/src/Ide/Plugin/SemanticTokens/Tokenize.hs +++ b/plugins/hls-semantic-tokens-plugin/src/Ide/Plugin/SemanticTokens/Tokenize.hs @@ -148,7 +148,7 @@ focusTokenAt leaf = do return (Rope.toText prefix, suffix) sub :: Char.Position -> Char.Position -> Maybe Char.Position sub (Char.Position l1 c1) (Char.Position l2 c2) - | l1 == l2 && c1 > c2 = Just $ Char.Position 0 (c1 - c2) + | l1 == l2 && c1 >= c2 = Just $ Char.Position 0 (c1 - c2) | l1 > l2 = Just $ Char.Position (l1 - l2) c1 | otherwise = Nothing realSrcLocRopePosition :: RealSrcLoc -> Char.Position diff --git a/plugins/hls-semantic-tokens-plugin/test/testdata/TOperator.expected b/plugins/hls-semantic-tokens-plugin/test/testdata/TOperator.expected index bcc567fe31..c19e7cb904 100644 --- a/plugins/hls-semantic-tokens-plugin/test/testdata/TOperator.expected +++ b/plugins/hls-semantic-tokens-plugin/test/testdata/TOperator.expected @@ -2,8 +2,8 @@ 4:4-5 TFunction "f" 4:6-7 TVariable "x" 4:10-11 TFunction "f" -4:12-13 TOperator "$" -4:14-15 TVariable "x" +4:11-12 TOperator "$" +4:12-13 TVariable "x" 6:2-6 TOperator "$$$$" 7:1-2 TVariable "x" 7:7-11 TOperator "$$$$" diff --git a/plugins/hls-semantic-tokens-plugin/test/testdata/TOperator.hs b/plugins/hls-semantic-tokens-plugin/test/testdata/TOperator.hs index d9f472e62d..e2f06c92fa 100644 --- a/plugins/hls-semantic-tokens-plugin/test/testdata/TOperator.hs +++ b/plugins/hls-semantic-tokens-plugin/test/testdata/TOperator.hs @@ -1,7 +1,7 @@ module TOperator where -- imported operator -go f x = f $ x +go f x = f$x -- operator defined in local module ($$$$) = b x = 1 $$$$ 2