Разбирался тут с подсказками shellcheck, и обнаружил следующее.

Вот такой скрипт не выполняет функцию func:

#!/bin/bash
func()
{
 echo "---" "$1"
}
i="abc:123"
echo $i
v="$(func ${i%%:*})"
# echo "$v"
# END

Если `echo` раскомментировать, то он выполняет функцию func, и допечатывает "--- abc".

Вопрос. Bash "выкидывает" неиспользуемые ветви кода? Есть ли у него встроенная оптимизация?

--

_______________________________________________
devel-newbies mailing list
[email protected]
https://lists.altlinux.org/mailman/listinfo/devel-newbies

Ответить