> Thanks to your createprocess.c/dumpargs.c pair, I could figure the existing 
> Cygwin's parsing without looking into its source code.  It turned to ignore 
> the 
> escaping power of a bare (unquoted) backslash when it was followed by a 
> double 
> quote, which is against both MSVC and Bash rules.

Forgot to mention that in the comparison chart.


        Bare backslashes   Bare backslashes     A quoted backslash     A quoted 
backslash
        not followed by a  followed by a        not followed by a      followed 
by a
        double quote       double quote:        special character      special 
character

                           pairs with
                           next backslash
                                    pairs with the 
                                    double quote

 MSVC   regular            yes      yes         regular                regular

 Bash   protecting         yes      yes         regular                
protecting

 Cygwin regular            yes      no          regular                
protecting

> So I guess the confusion remains as to why (a) C != M and (b) C != B.

Due to the possibility of receiving the command line by both Windows native and 
Cygwin application, the only question is why C != M.

--
Problem reports:       http://cygwin.com/problems.html
FAQ:                   http://cygwin.com/faq/
Documentation:         http://cygwin.com/docs.html
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple

Reply via email to