develooper Front page | perl.perl5.porters | Postings from July 2016

[perl #128747] base/lex test 41 failure under "make minitest" insome platforms

Thread Previous | Thread Next
From:
Father Chrysostomos via RT
Date:
July 27, 2016 13:38
Subject:
[perl #128747] base/lex test 41 failure under "make minitest" insome platforms
Message ID:
rt-4.0.18-2668-1469626717-195.128747-15-0@perl.org
On Wed Jul 27 04:44:43 2016, jhi wrote:
> This one test in line 191 of t/base/lex.t
> 
> T('^main:\(eval \d+\):6$', $test++);

Which is inside an eval, and is on line 6 of that eval.  T() checks the caller’s line number.

> 
> fails in some (not all) platforms under "make minitest" like this
> 
> ...
> t/base/lex ..................... FAILED at test 41
> Failed a basic test (base/lex.t) under minitest -- cannot continue.
> 
> (all other tests in the file pass) or if run explicitly like this:
> 
> (cd t && ./perl -Ilib TEST -v base/lex.t)
> ...
> ok 40
> # main:(eval 7):4 vs /^main:\(eval \d+\):6$/
> not ok 41
> FAILED at test 41
> Failed a basic test (base/lex.t) under minitest -- cannot continue.
> 
> So the difference is two source code lines.

It does seem odd that the line number would be off only on some platforms.  The last commit in toke.c to touch line numbers was b3dd0aba3d2b.  Can you check whether that was it?

Also, if you reduce the amount of code in that string eval leading up to the T() in question, does the problem persist?

-- 

Father Chrysostomos


---
via perlbug:  queue: perl5 status: open
https://rt.perl.org/Ticket/Display.html?id=128747

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