Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
Fix up setting loading.
  • Loading branch information
jnthn committed May 24, 2011
1 parent 5360e04 commit 6918b7c
Showing 1 changed file with 10 additions and 9 deletions.
19 changes: 10 additions & 9 deletions src/Perl6/SymbolTable.pm
Expand Up @@ -57,21 +57,22 @@ class Perl6::SymbolTable is HLL::Compiler::SerializationContextBuilder {
my $setting := %*COMPILING<%?OPTIONS><outer_ctx>
:= Perl6::ModuleLoader.load_setting($setting_name);

# Do load for pre-compiled situation.
self.add_event(:deserialize_past(PAST::Stmts.new(
# Do load in code.
my $fixup := PAST::Stmts.new(
PAST::Op.new(
:pirop('load_bytecode vs'), 'Perl6/ModuleLoader.pbc'
),
PAST::Op.new(
:pasttype('callmethod'), :name('set_outer_ctx'),
PAST::Var.new( :name('block'), :scope('register') ),
PAST::Op.new(
:pasttype('callmethod'), :name('load_setting'),
PAST::Var.new( :name('ModuleLoader'), :namespace([]), :scope('package') ),
$setting_name
)
PAST::Val.new( :value($*UNIT_OUTER) ),
PAST::Op.new(
:pasttype('callmethod'), :name('load_setting'),
PAST::Var.new( :name('ModuleLoader'), :namespace([]), :scope('package') ),
$setting_name
)
)
)));
);
self.add_event(:deserialize_past($fixup), :fixup_past($fixup));

return pir::getattribute__PPs($setting, 'lex_pad');
}
Expand Down

0 comments on commit 6918b7c

Please sign in to comment.