develooper Front page | perl.perl6.internals | Postings from December 2008

Re: [perl #61242] [FTBFS] build fails with --optimize on 64bit linux

Thread Previous
Nicholas Clark
December 11, 2008 08:14
Re: [perl #61242] [FTBFS] build fails with --optimize on 64bit linux
Message ID:
On Tue, Dec 09, 2008 at 03:43:59PM -0800, Moritz Lenz wrote:

> After a 'make realclean' I ran 'perl Configure --optimize && make'. It
> dies like this:
> ../../parrot -o PGE.pbc --output-pbc PGE.pir
> ../../parrot ../../runtime/parrot/library/PGE/Perl6Grammar.pir
> --output=PGE/bui
> ltins_gen.pir PGE/
> FixedIntegerArray: Can't resize!
> current instr.: 'parrot;P6metaclass;new_class' pc 95
> (runtime/parrot/library/P6o
> bject.pir:126)
> make[1]: *** [PGE.pbc] Error 1
> make[1]: Leaving directory `/home/moritz/src/parrot/compilers/pge'
> make: *** [compilers.dummy] Error 2

> This is a 64bit Debian Lenny install with gcc 4.3.2. Building without
> --optimize is no problem.

I believe that Parrot will continue to have obscure problems such as this,
much as Perl 5 used to do, until it implements the equivalent of

and fixes the problems that it shows up.

(Yes, it's big. Search for the section starting
==== //depot/perl/ (xtext) ====
for the Perl code that generates the assertion macros from embed.fnc. This
is the equivalent to Parrot's headerizer)

Summary - I infer that some "not null" annotations in Parrot are not correct.

Perl 5's experience was that these are like landmines, and lay dormant until
someone tries with a newer compiler, that happens to add a bit more
optimisation. Of course, this can happen months after you release code, code
that "works" and is thought to be stable. IIRC we had 3 separate end user bugs
found with this as the cause, before I realised that we were never going to
find them by hand, so made the above changes to make the compiler find them.

What you don't see in *that* change was the half dozen or so that it found
and I fixed, that I committed before I was able to add that. See here:

Nicholas Clark

Thread Previous Perl Programming lists via nntp and http.
Comments to Ask Bjørn Hansen at | Group listing | About