[svn:parrot] r39548 - branches/pmc_pct/compilers/pmcc/src/emitter
bacek at svn.parrot.org
bacek at svn.parrot.org
Sun Jun 14 09:09:46 UTC 2009
Author: bacek
Date: Sun Jun 14 09:09:46 2009
New Revision: 39548
URL: https://trac.parrot.org/parrot/changeset/39548
Log:
[pmcc] Generate full set of required constants.
Modified:
branches/pmc_pct/compilers/pmcc/src/emitter/pmc.pm
Modified: branches/pmc_pct/compilers/pmcc/src/emitter/pmc.pm
==============================================================================
--- branches/pmc_pct/compilers/pmcc/src/emitter/pmc.pm Sun Jun 14 09:09:24 2009 (r39547)
+++ branches/pmc_pct/compilers/pmcc/src/emitter/pmc.pm Sun Jun 14 09:09:46 2009 (r39548)
@@ -522,10 +522,26 @@
# First - gather all required constant strings in hash.
my %constant_strings;
- for self.past.multis.keys {
+ # Generate bunch of constant strings for registering multi.
+ my %multis := self.past.multis;
+ for %multis.keys {
if !%constant_strings{ $_ } {
%constant_strings{ $_ } := +%constant_strings;
}
+
+ # $m is list of implementations.
+ my $m := %multis{ $_ };
+ for $m {
+ my $short_sig := $_<short_signature>;
+ if !%constant_strings{ $short_sig } {
+ %constant_strings{ $short_sig } := +%constant_strings;
+ }
+
+ my $long_sig := $_<long_signature>;
+ if !%constant_strings{ $long_sig } {
+ %constant_strings{ $long_sig } := +%constant_strings;
+ }
+ }
}
say("constants:");
More information about the parrot-commits
mailing list