Front page | perl.cvs.parrot |
Postings from January 2009
[svn:parrot] r35176 - branches/rvar2/languages/perl6/src/builtins
From:
jonathan
Date:
January 7, 2009 13:59
Subject:
[svn:parrot] r35176 - branches/rvar2/languages/perl6/src/builtins
Message ID:
20090107215903.2FFF2CB9F9@x12.develooper.com
Author: jonathan
Date: Wed Jan 7 13:59:02 2009
New Revision: 35176
Modified:
branches/rvar2/languages/perl6/src/builtins/guts.pir
branches/rvar2/languages/perl6/src/builtins/op.pir
Log:
[rakudo] Little re-work of roles, rip out much of the last patch and do it differently. This way fixes up another test too.
Modified: branches/rvar2/languages/perl6/src/builtins/guts.pir
==============================================================================
--- branches/rvar2/languages/perl6/src/builtins/guts.pir (original)
+++ branches/rvar2/languages/perl6/src/builtins/guts.pir Wed Jan 7 13:59:02 2009
@@ -406,6 +406,9 @@
info['name'] = $P0
info['namespace'] = nsarray
metarole = new 'Role', info
+ nsarray = clone nsarray
+ $S0 = pop nsarray
+ set_hll_global nsarray, $S0, metarole
.return (metarole)
.end
@@ -470,7 +473,6 @@
$P0 = $P0.'parse_name'(name)
$S0 = pop $P0
$P0 = get_hll_global $P0, $S0
- $P0 = get_class $P0
## add it to the class.
metaclass.'add_role'($P0)
Modified: branches/rvar2/languages/perl6/src/builtins/op.pir
==============================================================================
--- branches/rvar2/languages/perl6/src/builtins/op.pir (original)
+++ branches/rvar2/languages/perl6/src/builtins/op.pir Wed Jan 7 13:59:02 2009
@@ -400,10 +400,6 @@
.local pmc derived
derived = new 'Class'
addparent derived, parrot_class
- $I0 = isa role, 'NameSpace'
- unless $I0 goto not_ns
- role = get_class role
- not_ns:
$I0 = isa role, 'Role'
if $I0 goto one_role
$I0 = isa role, 'List'
@@ -421,10 +417,6 @@
roles_loop:
unless role_it goto roles_loop_end
cur_role = shift role_it
- $I0 = isa cur_role, 'NameSpace'
- unless $I0 goto many_not_ns
- cur_role = get_class cur_role
- many_not_ns:
$I0 = isa cur_role, 'Role'
unless $I0 goto error
'!keyword_does'(derived, cur_role)
-
[svn:parrot] r35176 - branches/rvar2/languages/perl6/src/builtins
by jonathan