On Tue, 22 Sep 2009, Will Coleda via RT wrote:
> On Tue Jul 08 20:56:02 2008, s1n wrote:
> > When trying to use the --optimize flag, building perl6 causes parrot
> to
> > segfault. Attached is the Configure.pl script output.
> <SNIP>
>
> s1n - this original report is over a year old; there have been a lot of
> changes to both parrot and rakudo in that time; we've also just
> committed something that should cause the optimized build to at least
> fail more cleanly if there's a problem (which we can then more easily
> identify and resolve.)
Actually, all those ASSERT_ARGS checks aren't used in the --optimize build
anyway. Applying the following patch should enable them, assuming that's
what is actually intended.
--- /parrot-svn/config/init/optimize.pm 2009-09-21 08:55:56.000000000 -0400
+++ parrot-andy/config/init/optimize.pm 2009-09-22 13:35:52.216068004 -0400
@@ -46,7 +46,7 @@
# disable debug flags
$conf->data->set( cc_debug => '' );
- $conf->data->add( ' ', ccflags => "-DDISABLE_GC_DEBUG=1 -DNDEBUG" );
+ $conf->data->add( ' ', ccflags => "-DDISABLE_GC_DEBUG=1" );
if ( $optimize eq "1" ) {
# use perl5's value
However, in principle, the various __nonnull__ attributes mean that gcc is
still free to optimize away at least some of the ASSERT checks.
--
Andy Dougherty [email protected]