I'll admit to being stumped by this one. Your prototype forces the second and third arguments to start with $,and typically a read-only value is a constant (take a peek through perldoc perldiag for your exact error message (minus line numbers) and you'll see the typical scenario in which this error arises).

I'm not going to cry 'perl bug!' though, because I'm just not *that* familiar with prototypes and how Perl does 'em. But what say you put in the following modification and see what happens:

sub GetSSNameFromFile { my ($s_inputFile, $rs_OutputFile, $rs_recurseLabel) = @_; # as before $rs_recurseLabel++; # .. as before }
Getting rid of the prototype might at least help track down the problem.

Ooops, hold it! I didn't read the original code closely enough. You're trying to increment the thing to which $rs_recurseLabel *refers* Take a sack of salt with this one ... (but I'll still hold to "why put the prototype in?". In the chatterbox, tilly thoughtfully provided a link to this piece by Tom Christiansen, which is an illuminating document on Perl prototypes and their attendant gotchas))


In reply to Re: References, Prototypes, and read-only values by arturo
in thread References, Prototypes, and read-only values by dkusters

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.