Subject: | newly-created .pmc file is not loaded/executed when built |
=============== MyCompiler.pm contains =================
package MyCompiler;
use Module::Compile -base;
sub pmc_compile {
return qq{warn 'MyCompiler';\n};
}
1;
============ MyCompilerUser.pm contains ================
package MyCompilerUser;
use MyCompiler;
warn 'MyCompilerUser';
no MyCompiler;
1;
============= my_compiler_demo contains =================
#!/usr/bin/env perl
use MyCompilerUser;
warn "done";
============= Execution =================
localhost:..erl/Module-Compile % rm *.pmc
localhost:..erl/Module-Compile % ./my_compiler_demo
done at ./my_compiler_demo line 4.
localhost:..erl/Module-Compile % ./my_compiler_demo
MyCompiler at MyCompilerUser.pm line 2.
done at ./my_compiler_demo line 4.
============= Problem description =============
The first invocation correctly notices the pmc is missing, and creates it, but FAILS TO LOAD
THE PMC, so the "warn" doesn't get executed.
This means the absence of a pmc isn't just "something that will run slower" but something
that actually has a different behavior. After discussion on #perl6, we conclude that this is
broken behavior. Please fix.