summaryrefslogtreecommitdiffstats
path: root/source/core/slang-string-util.cpp
diff options
context:
space:
mode:
authorYong He <yonghe@outlook.com>2024-02-06 16:30:31 -0800
committerGitHub <noreply@github.com>2024-02-06 16:30:31 -0800
commitab41d548db376c6b52869004d1b6e21b88b4c9c8 (patch)
tree61aacddad8b8c56d77cf63ab3b650fdb28bbe0e6 /source/core/slang-string-util.cpp
parent6365e00179179f2bc0bc25af3d51d528501498d5 (diff)
Improve Capability System (#3555)
* Improve capability system. * Update documentation. * Tuning semantics. * LSP: hierarchical diagnostics. * Fix test. * Fix test.
Diffstat (limited to 'source/core/slang-string-util.cpp')
-rw-r--r--source/core/slang-string-util.cpp8
1 files changed, 8 insertions, 0 deletions
diff --git a/source/core/slang-string-util.cpp b/source/core/slang-string-util.cpp
index a6a18d4a0..c7625e1e0 100644
--- a/source/core/slang-string-util.cpp
+++ b/source/core/slang-string-util.cpp
@@ -727,6 +727,12 @@ int StringUtil::parseIntAndAdvancePos(UnownedStringSlice text, Index& pos)
pos++;
continue;
}
+ bool isNeg = false;
+ if (pos < text.getLength() && text[pos] == '-')
+ {
+ pos++;
+ isNeg = true;
+ }
while (pos < text.getLength())
{
if (text[pos] >= '0' && text[pos] <= '9')
@@ -740,6 +746,8 @@ int StringUtil::parseIntAndAdvancePos(UnownedStringSlice text, Index& pos)
break;
}
}
+ if (isNeg)
+ result = -result;
return result;
}