Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
Annlix
ShellCheck
提交
cd489619
S
ShellCheck
项目概览
Annlix
/
ShellCheck
与 Fork 源项目一致
Fork自
镜像 / koalaman / ShellCheck
通知
1
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
S
ShellCheck
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
cd489619
编写于
9月 24, 2016
作者:
V
Vidar Holen
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Don't consider ~foo constant.
上级
868d53af
变更
2
显示空白变更内容
内联
并排
Showing
2 changed file
with
4 addition
and
3 deletion
+4
-3
ShellCheck/ASTLib.hs
ShellCheck/ASTLib.hs
+2
-0
ShellCheck/Analytics.hs
ShellCheck/Analytics.hs
+2
-3
未找到文件。
ShellCheck/ASTLib.hs
浏览文件 @
cd489619
...
@@ -55,6 +55,8 @@ isGlob _ = False
...
@@ -55,6 +55,8 @@ isGlob _ = False
-- Is this shell word a constant?
-- Is this shell word a constant?
isConstant
token
=
isConstant
token
=
case
token
of
case
token
of
-- This ignores some cases like ~"foo":
T_NormalWord
_
(
T_Literal
_
(
'~'
:
_
)
:
_
)
->
False
T_NormalWord
_
l
->
all
isConstant
l
T_NormalWord
_
l
->
all
isConstant
l
T_DoubleQuoted
_
l
->
all
isConstant
l
T_DoubleQuoted
_
l
->
all
isConstant
l
T_SingleQuoted
_
_
->
True
T_SingleQuoted
_
_
->
True
...
...
ShellCheck/Analytics.hs
浏览文件 @
cd489619
...
@@ -1251,12 +1251,11 @@ prop_checkConstantIfs4 = verifyNot checkConstantIfs "[[ $n -le 3 ]]"
...
@@ -1251,12 +1251,11 @@ prop_checkConstantIfs4 = verifyNot checkConstantIfs "[[ $n -le 3 ]]"
prop_checkConstantIfs5
=
verifyNot
checkConstantIfs
"[[ $n -le $n ]]"
prop_checkConstantIfs5
=
verifyNot
checkConstantIfs
"[[ $n -le $n ]]"
prop_checkConstantIfs6
=
verifyNot
checkConstantIfs
"[[ a -ot b ]]"
prop_checkConstantIfs6
=
verifyNot
checkConstantIfs
"[[ a -ot b ]]"
prop_checkConstantIfs7
=
verifyNot
checkConstantIfs
"[ a -nt b ]"
prop_checkConstantIfs7
=
verifyNot
checkConstantIfs
"[ a -nt b ]"
prop_checkConstantIfs8
=
verifyNot
checkConstantIfs
"[[ ~foo == '~foo' ]]"
checkConstantIfs
_
(
TC_Binary
id
typ
op
lhs
rhs
)
|
not
isDynamic
=
checkConstantIfs
_
(
TC_Binary
id
typ
op
lhs
rhs
)
|
not
isDynamic
=
when
(
is
Just
lLit
&&
isJust
rLit
)
$
when
(
is
Constant
lhs
&&
isConstant
rhs
)
$
warn
id
2050
"This expression is constant. Did you forget the $ on a variable?"
warn
id
2050
"This expression is constant. Did you forget the $ on a variable?"
where
where
lLit
=
getLiteralString
lhs
rLit
=
getLiteralString
rhs
isDynamic
=
isDynamic
=
op
`
elem
`
[
"-lt"
,
"-gt"
,
"-le"
,
"-ge"
,
"-eq"
,
"-ne"
]
op
`
elem
`
[
"-lt"
,
"-gt"
,
"-le"
,
"-ge"
,
"-eq"
,
"-ne"
]
&&
typ
==
DoubleBracket
&&
typ
==
DoubleBracket
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录