fix(includes): 消除隐式窄化(string.strlen → int)
规则收紧后,6 处 string.strlen()(sizet/64 位)隐式落进 int 会报隐式窄化:argparse.vp:204/332、ast/parser.vp:3202/3203/3255/3256 改为显式 int(...);另 gzip.vp:62 的 read_all 容量去掉多余 ULONG(...)(形参已是 sizet)。
This commit is contained in:
1 parent
aa88e46b5d
commit
705de51459
3 files changed
+7
-7
No files matched your search
+2
-2
@@ -201,7 +201,7 @@ class ArgumentParser:
|
||||
"""Match prefix for --name=value syntax"""
|
||||
for i in range(self._arg_count):
|
||||
arg: Argument* = self._get_arg(i)
|
||||
name_len: int = string.strlen(arg.name)
|
||||
name_len: int = int(string.strlen(arg.name)) # 显式 cast:避免 64→32 隐式窄化
|
||||
if string.strncmp(token, arg.name, name_len) == 0:
|
||||
if token[name_len] == '=':
|
||||
return i
|
||||
@@ -329,7 +329,7 @@ class ArgumentParser:
|
||||
release(args)
|
||||
return None
|
||||
arg = self._get_arg(found)
|
||||
arg_name_len: int = string.strlen(arg.name)
|
||||
arg_name_len: int = int(string.strlen(arg.name)) # 显式 cast:避免 64→32 隐式窄化
|
||||
value = token + arg_name_len + 1
|
||||
self._store_value(args, arg, value)
|
||||
idx += 1
|
||||
|
||||
Reference in new issue
Block a user