From: Junio C Hamano Date: Mon, 20 Jun 2011 23:31:32 GMT Subject: Re: POSIX woes in t7810.87: dash bash or bash dash? Message-ID: <7vwrgg9j1n.fsf@alter.siamese.dyndns.org> In-Reply-To: <20110620232425.GA617@sigill.intra.peff.net> Jeff King writes: > On Mon, Jun 20, 2011 at 02:46:08PM -0700, Junio C Hamano wrote: > >> diff --git a/t/t7810-grep.sh b/t/t7810-grep.sh >> index 69bd576..6379ad6 100755 >> --- a/t/t7810-grep.sh >> +++ b/t/t7810-grep.sh >> @@ -658,9 +658,9 @@ test_expect_success LIBPCRE 'grep -P -v pattern' ' >> ' >> >> test_expect_success LIBPCRE 'grep -P -i pattern' ' >> - { >> - echo "hello.c: printf(\"Hello world.\n\");" >> - } >expected && >> + cat >expected <<-EOF && >> + hello.c: printf("Hello world.\n"); >> + EOF > > Do you need to quote EOF to suppress expansion in the here document? > Both bash and dash seem to pass unknown backslash-escapes like "\n" > through unharmed, but I don't know if that is portable (they do both > munge known escapes like "\\", of course). I do not think that is strictly necessary, as we are not in the corner of non-portable echo behaviour anymore, but I guess it wouldn't hurt.