Re: Git build on antique PowerMac
- From
Ævar Arnfjörð Bjarmason <avarab@gmail.com>
- Date
- May 8, 2019, 22:27 UTC
- Message-ID
- <87mujwh98z.fsf@evledraar.gmail.com>
- In-Reply-To
- <CAPig+cSzsmeHp1S5WG3TVXEyZKt9eVrsCsWEkpwbNUZK_SJ53g@mail.gmail.com>
On Sun, May 05 2019, Eric Sunshine wrote:
Show 20 quoted lines
> On Sun, May 5, 2019 at 3:43 PM Jeffrey Walton <noloader@gmail.com> wrote: >> I have a PowerMac I use for testing. [...] >> make -C t/ all >> readline() on unopened filehandle test_must_fail >> run_sub_test_lib_test at check-non-portable-shell.pl line 34. >> Modification of a read-only value attempted at >> check-non-portable-shell.pl line 34. >> make[1]: *** [test-lint-shell-syntax] Error 255 >> >> Does anyone want to take a shot at this antique system? I can provide >> SSH access with root. > > As the author of the code triggering that problem, I can take a look > at it. (You already have my public SSH key on your Solaris box.) > > Given [1], I can see (I guess) why it's complaining about modification > of a read-only variable. However, the unopened filehandle complaint > looks odd. > > [1]: https://www.perlmonks.org/?node_id=570712#default_unlocalized
It's because "while (<>) { readline }" didn't use to be supported until 5.10, and he's on 5.8.
$ seq 1 4 | ./miniperl -we 'print $]; while (<>) { chomp; print "$.: $_ -> " . readline }; print "\n"'
readline() on unopened filehandle 1: 1 -> at -e line 1.
Use of uninitialized value in concatenation (.) or string at -e line 1.
readline() on unopened filehandle 2: 2 -> at -e line 1.
readline() on unopened filehandle 3: 3 -> at -e line 1.
readline() on unopened filehandle 4: 4 -> at -e line 1.
5.009004
$ seq 1 4 | perl -we 'print $]; while (<>) { chomp; print "$.: $_ -> " . readline }; print "\n"'
5.0280011: 1 -> 2
3: 3 -> 4