From dcc10bbdf69a5b92c27d7ddbbb4ce69b11aeeac1 Mon Sep 17 00:00:00 2001 From: Vidar Holen Date: Sat, 7 Mar 2015 23:01:34 -0800 Subject: [PATCH] Fixed accidentally ignored undef warning for ${#foo} --- ShellCheck/Analytics.hs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ShellCheck/Analytics.hs b/ShellCheck/Analytics.hs index 3769d0b..2b779d2 100644 --- a/ShellCheck/Analytics.hs +++ b/ShellCheck/Analytics.hs @@ -2594,7 +2594,7 @@ prop_checkUnassignedReferences17= verifyNotTree checkUnassignedReferences "USERS prop_checkUnassignedReferences18= verifyNotTree checkUnassignedReferences "FOOBAR=42; export FOOBAR=" prop_checkUnassignedReferences19= verifyNotTree checkUnassignedReferences "readonly foo=bar; echo $foo" prop_checkUnassignedReferences20= verifyNotTree checkUnassignedReferences "printf -v foo bar; echo $foo" - +prop_checkUnassignedReferences21= verifyTree checkUnassignedReferences "echo ${#foo}" checkUnassignedReferences params t = warnings where (readMap, writeMap) = execState (mapM tally $ variableFlow params) (Map.empty, Map.empty) @@ -2650,7 +2650,7 @@ checkUnassignedReferences params t = warnings isInArray var t = any isArray $ getPath (parentMap params) t where isArray (T_Array {}) = True - isArray (T_DollarBraced _ l) | var /= bracedString l = True + isArray (T_DollarBraced _ l) | var /= getBracedReference (bracedString l) = True isArray _ = False isGuarded (T_DollarBraced _ v) =