No announcement yet.

Bug in Perl compare

  • Filter
  • Time
  • Show
Clear All
new posts

  • 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, I found making a single change in the "" source causes the problem, and I've attached a zip of the and the changed version that shows the problem: (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 "" 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!

  • #2
    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
      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!


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