# Test for correct handling of backslashes.
# Note that some lines in each heredoc start with a tab.

a=qwerty

echo Quoted heredoc:
cat <<"EOF1"
a\
	b
a\\
	b
 123456 -$a-\t-\\-\"-\'-\`-\--\z-\*-\?-
	-$a-\t-\\-\"-\'-\`-\--\z-\*-\?-
 123456 `echo  v'-$a-\t-\\-\"-\'-\`-\--\z-\*-\?-'`
 123456 $(echo v'-$a-\t-\\-\"-\'-\`-\--\z-\*-\?-')
c\
EOF1
echo

echo Unquoted heredoc:
cat <<EOF2
a\
	b
a\\
	b
 123456 -$a-\t-\\-\"-\'-\`-\--\z-\*-\?-
	-$a-\t-\\-\"-\'-\`-\--\z-\*-\?-
 123456 `echo  v'-$a-\t-\\-\"-\x-\`-\--\z-\*-\?-'`
 123456 $(echo v'-$a-\t-\\-\"-\x-\`-\--\z-\*-\?-')
c\
EOF2
EOF2
echo

echo Quoted -heredoc:
cat <<-"EOF3"
a\
	b
a\\
	b
 123456 -$a-\t-\\-\"-\'-\`-\--\z-\*-\?-
	-$a-\t-\\-\"-\'-\`-\--\z-\*-\?-
 123456 `echo  v'-$a-\t-\\-\"-\'-\`-\--\z-\*-\?-'`
 123456 $(echo v'-$a-\t-\\-\"-\'-\`-\--\z-\*-\?-')
c\
	EOF3
# In -heredoc case the marker is detected even if it is indented.
echo

echo Unquoted -heredoc:
cat <<-EOF4
a\
	b
a\\
	b
 123456 -$a-\t-\\-\"-\'-\`-\--\z-\*-\?-
	-$a-\t-\\-\"-\'-\`-\--\z-\*-\?-
 123456 `echo  v'-$a-\t-\\-\"-\x-\`-\--\z-\*-\?-'`
 123456 $(echo v'-$a-\t-\\-\"-\x-\`-\--\z-\*-\?-')
c\
EOF4
	EOF4
# The marker is not detected if preceding line ends in backslash.
# TODO: marker should be detected even if it is split by line continuation:
# EOF\
# 4
# but currently hush doesn't do it. (Tab before "4" is not allowed, though.)
echo

echo "Done: $?"
