Results 1 to 3 of 3
  1. #1
    Join Date
    Dec 2007
    Posts
    13

    Default Bug in Perl compare

    I've finally managed to get an example of when Cirrus loses it's way in some Perl comparisons, which I've seen a few times in our own Perl code ! Note I see this with the Linux version, but I've proved it also happens with the Windows version whether the files are in Unix or Windows format.

    It's related to having a single quote mark (') in a comment, but it's not just that. Trying with the source files from IPC::Run (see http://search.cpan.org/~rsod/IPC-Run...lib/IPC/Run.pm), I found making a single change in the "Timer.pm" source causes the problem, and I've attached a zip of the Timer.pm and the changed version that shows the problem: Attachment 52 (I even converted them to DOS format for you )

    Just to be clear -the only difference is a single line added at line 665, but in Cirrus the remainder of the file shows as different. This does not happen (and should not happen) in many other Perl files - eg. the main "Run.pm" in the above package, and that file contains large numbers of single quotes!

    Hopefully this example will allow you to debug what actually is getting lost in the comparison code!
    Cheers
    Steve

  2. #2
    Join Date
    Oct 2007
    Location
    Madison, WI
    Posts
    2,503

    Default

    Thanks for the sample files. We weren't handling perlpod markup, and that will be corrected in the next release. I got most of the cases covered, but I couldn't how a =for one stops, so I left that out.
    ZoŽ P Scooter Software

  3. #3
    Join Date
    Dec 2007
    Posts
    13

    Thumbs up

    Fantastic! Build 443 includes this support and displays the differences perfectly!

    Reading the docs for the =for structure, it says that this ends at the next blank line. It implies a common usage as a form of comment:

    =for comment
    This is just a comment that won't appear in any formatted output!

    more-perl-code...

    ... but I have to say I didn't even know about =for until you mentioned it
    Cheers
    Steve

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •