Subject: bug#15933: make check not working

From: Eli Zaretskii <[email-masked]>
Date: Wed, 20 Nov 2013 23:53:26 +0200

> Date: Wed, 20 Nov 2013 23:38:35 +0200
> From: Eli Zaretskii <[email-masked]>
> Cc: [email-masked], [email-masked]
> 
> > Does
> > 
> >  echo :foo
> > 
> > print ";foo"?
> 
> No, because 'echo' is a shell builtin.  But if you invoke echo.exe
> that is a native Windows program (e.g., compiled with MinGW, then yes,
> it will print ";foo".

Well, for some values of 'foo'.  MSYS has a complex heuristics that
does this conversion only when 'foo' is believed to be a file name.
So, a literal ":foo" prints as ":foo", but, e.g., ":../foo" prints as
";..\foo" (yes, with mirrored slash), and ":/foo" prints as (gasp!)
";D:\MSYS\foo" (assuming that MSYS is installed at D:\MSYS).

This heuristics does TRT 99% of the time, but sometimes it fails, and
then we need to help it with the likes of unmsys-file-name etc.