Simplify literalEquals
This commit is contained in:
parent
61b073d507
commit
ef51ed3950
|
@ -3052,11 +3052,9 @@ checkArrayAssignmentIndices params root =
|
||||||
|
|
||||||
T_NormalWord _ parts ->
|
T_NormalWord _ parts ->
|
||||||
let literalEquals = do
|
let literalEquals = do
|
||||||
part <- parts
|
T_Literal id str <- parts
|
||||||
(id, str) <- case part of
|
let (before, after) = break ('=' ==) str
|
||||||
T_Literal id str -> [(id,str)]
|
guard $ all isDigit before && not (null after)
|
||||||
_ -> []
|
|
||||||
guard $ '=' `elem` str && hasNumericIndex str
|
|
||||||
return $ warnWithFix id 2191 "The = here is literal. To assign by index, use ( [index]=value ) with no spaces. To keep as literal, quote it." (surroundWidth id params "\"")
|
return $ warnWithFix id 2191 "The = here is literal. To assign by index, use ( [index]=value ) with no spaces. To keep as literal, quote it." (surroundWidth id params "\"")
|
||||||
in
|
in
|
||||||
if null literalEquals && isAssociative
|
if null literalEquals && isAssociative
|
||||||
|
@ -3064,8 +3062,6 @@ checkArrayAssignmentIndices params root =
|
||||||
else sequence_ literalEquals
|
else sequence_ literalEquals
|
||||||
|
|
||||||
_ -> return ()
|
_ -> return ()
|
||||||
where
|
|
||||||
hasNumericIndex str = all isDigit $ takeWhile (/= '=') str
|
|
||||||
|
|
||||||
|
|
||||||
prop_checkUnmatchableCases1 = verify checkUnmatchableCases "case foo in bar) true; esac"
|
prop_checkUnmatchableCases1 = verify checkUnmatchableCases "case foo in bar) true; esac"
|
||||||
|
|
Loading…
Reference in New Issue