Fix and restore the macro-multiline.c test

This test didn't work as intended and was ultimately disabled some years ago in
r169458.

Indeed it's not clear if the '\n' was ever passed through to the driver
correctly given that lit would insert '&& {' at the newline.

Test rewritten to use printf/xargs to insert '\n' in a more reliable manner and
to use FileCheck for verification.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@206703 91177308-0d34-0410-b5e6-96231b3b80d8