On 6 Oct 2012, at 14:05, "Gary V. Vaughan" <g...@gnu.org> wrote:
> Hi Peter, > > On 6 Oct 2012, at 06:20, Peter Rosin <p...@lysator.liu.se> wrote: >> And lastly libtool.at. It is only \' that is a problem. If I take >> that char out of the backslashified list, the test is ok. >> Another data point is that if I replace the grep on line 110 like >> this: >> -LT_AT_CHECK([$EGREP >> "$mode:.*$match_preflag\"?$flag\\\\\\$mchar:test\\\\\\$mchar\"? " stdout], >> [0], [ignore]) >> +LT_AT_CHECK([$EGREP >> "$mode:.*$match_preflag\"?$flag\\\\$mchar:test\\\\$mchar\"? " stdout], [0], >> [ignore]) >> it is ok for \" and \', but not for \$ and \\. > > Actually the \\$ is my mistake, since the point of using LT_AT_CHECK > rather than straight AT_CHECK is to echo the expanded output to the > testsuite.log before executing the test, and escaping the $ like that > defeats the expansion. > >> Looking at LT_ESCAPE in testsuite.at (which is expanded as part of >> LT_AT_CHECK), it seems to handle \"` specially, but not $. > > Interesting. Then it looks like it is the echo expansion in LT_AT_CHECK > that is tripping Windows $SHELL, so moving to straight AT_CHECK will > remove that problem... > >> My $EGREP is GNU grep 2.6.3 on Cygwin, and GNU grep 2.5.4 on MinGW. >> >> I don't have enough quotefuu to fix this. > > Changing all LT_AT_CHECK to AT_CHECK for the tests formerly in quote.test > and removing the extra \\ before $ doesn't regress on Mac, where make > distcheck still succeeds. Scratch that, on closer inspection there are a couple of thinkos and portable quoting errors in the original port of quote.test to Autotest. > I'll push if you can confirm that it fixes the test on Windows for you, > otherwise we'll have to wait until I have a Windows test environment to > figure out what I'm missing. I've pushed what I think is the correct fix. Let me know if you still have issues with the test. Cheers, -- Gary V. Vaughan (gary AT gnu DOT org)