develooper Front page | perl.perl5.porters | Postings from August 2008

RE: Smoke [5.11.0] 34226 FAIL(F) MSWin32 WinXP/.Net SP3 (x86/2 cpu)

Thread Previous | Thread Next
From:
Steve Hay
Date:
August 26, 2008 06:31
Subject:
RE: Smoke [5.11.0] 34226 FAIL(F) MSWin32 WinXP/.Net SP3 (x86/2 cpu)
Message ID:
1B32FF956ABF414C9BCE5E487A1497E70236DFB8@ukmail02.planit.group
Nicholas Clark wrote:
> On Tue, Aug 26, 2008 at 12:39:16PM +0100, Steve Hay wrote:
>> Nicholas Clark wrote:
> 
>>> Mmm. What happens if you run its little test program from the
>>> command line: 
>>> 
>>> $ ./perl -Ilib
>>> use constant foo => q(a);
>>> index(q(a), foo);
>>> local *g=${::}{foo};print "ok";
>>> __END__
>>> ok
>>> 
>>> And does it work better if that "ok" becomes "ok\n" ?
>> 
>> It outputs "ok".
>> If I change "ok" to "ok\n" then it outputs "ok
>> ".
> 
> Odd. So try something else: If you change t/op/local.t from
> 
> like( runperl(stderr => 1,
>               prog => 'use constant foo => q(a);' .
>                       'index(q(a), foo);' .
>                       'local *g=${::}{foo};print "ok";'), "ok",
> "[perl #52740]"); 
> 
> to
> 
> like( runperl(stderr => 1,
>               prog => 'use constant foo => q(a);' .
>                       'index(q(a), foo);' .
>                       'local *g=${::}{foo};print "ok\n";'), "ok",
> "[perl #52740]"); 
> 
> 
> does that make t/op/local.t pass?

No, it didn't. But #34228 does.

It seems that runperl() is a little flaky when it comes to handling
quotes in different shells. Perhaps it is best to always use q() and
qq().

Thread Previous | Thread Next


nntp.perl.org: Perl Programming lists via nntp and http.
Comments to Ask Bjørn Hansen at ask@perl.org | Group listing | About