Skip to content

Instantly share code, notes, and snippets.

@FROGGS
Created September 10, 2015 21:44
Show Gist options
  • Save FROGGS/3598992b921b34a1c6d5 to your computer and use it in GitHub Desktop.
Save FROGGS/3598992b921b34a1c6d5 to your computer and use it in GitHub Desktop.
diff --git a/src/Perl6/Metamodel/BOOTSTRAP.nqp b/src/Perl6/Metamodel/BOOTSTRAP.nqp
index 3c4380d..9156616 100644
--- a/src/Perl6/Metamodel/BOOTSTRAP.nqp
+++ b/src/Perl6/Metamodel/BOOTSTRAP.nqp
@@ -1103,9 +1103,13 @@ BEGIN {
Attribute.HOW.add_method(Attribute, 'new',
nqp::getstaticcode(sub ($self, :$name!, :$type!, :$package!, :$inlined = 0, :$has_accessor,
:$positional_delegate = 0, :$associative_delegate = 0, *%other) {
+ nqp::say('BOOTSTRAP:1106 ' ~ $self.HOW.name($self) ~ ' ' ~ $name);
my $attr := nqp::create($self);
+ nqp::say('BOOTSTRAP:1108 ' ~ $attr.HOW.name($attr) ~ ' ' ~ $name);
nqp::bindattr_s($attr, Attribute, '$!name', $name);
+ nqp::say('BOOTSTRAP:1110 ' ~ $attr.HOW.name($attr) ~ ' ' ~ $name);
nqp::bindattr($attr, Attribute, '$!type', nqp::decont($type));
+ nqp::say('BOOTSTRAP:1112 ' ~ $attr.HOW.name($attr) ~ ' ' ~ $name);
nqp::bindattr_i($attr, Attribute, '$!has_accessor', $has_accessor);
nqp::bindattr($attr, Attribute, '$!package', $package);
nqp::bindattr_i($attr, Attribute, '$!inlined', $inlined);
diff --git a/src/core/traits.pm b/src/core/traits.pm
index cc5cc0d..a07ec9d 100644
--- a/src/core/traits.pm
+++ b/src/core/traits.pm
@@ -248,7 +248,7 @@ my $_;
sub EXPORT_SYMBOL(\exp_name, @tags, Mu \sym) {
my @export_packages = $*EXPORT;
- for flat nqp::hllize(@*PACKAGES) {
+ for |nqp::hllize(@*PACKAGES) {
unless .WHO.EXISTS-KEY('EXPORT') {
.WHO<EXPORT> := Metamodel::PackageHOW.new_type(:name('EXPORT'));
.WHO<EXPORT>.^compose;
~/dev/rakudo$ ./perl6-m --target=mbc --output=lib/NativeCall.pm.moarvm -Ilib lib/NativeCall.pm
BOOTSTRAP:1106 Attribute $!setup
BOOTSTRAP:1108 Attribute $!setup
BOOTSTRAP:1110 Attribute $!setup
BOOTSTRAP:1112 Attribute $!setup
BOOTSTRAP:1106 Attribute $!call
BOOTSTRAP:1108 Attribute $!call
BOOTSTRAP:1110 Attribute $!call
BOOTSTRAP:1112 Attribute $!call
BOOTSTRAP:1106 Attribute $!rettype
BOOTSTRAP:1108 Attribute $!rettype
BOOTSTRAP:1110 Attribute $!rettype
BOOTSTRAP:1112 Attribute $!rettype
BOOTSTRAP:1106 Attribute $!cstr
BOOTSTRAP:1108 Attribute $!cstr
BOOTSTRAP:1110 Attribute $!cstr
BOOTSTRAP:1112 Attribute $!cstr
~/dev/rakudo$ ./perl6-j --target=jar --output=lib/NativeCall.pm.jar -Ilib lib/NativeCall.pm
BOOTSTRAP:1106 Attribute $!setup
BOOTSTRAP:1108 Attribute $!setup
===SORRY!===
java.lang.RuntimeException: No such attribute '$!name' for this object
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment