Author: pmichaud
Date: Mon Jan  8 11:46:35 2007
New Revision: 16497

Modified:
   trunk/languages/abc/src/abc.pg
   trunk/languages/perl6/src/grammar_rules.pg
   trunk/runtime/parrot/library/Parrot/HLLCompiler.pir

Log:
[HLLCompiler]:
* Update HLLCompiler to prefer new 'TOP' grammar rule (from S03)
  over 'apply' (now deprecated).
* Switch <apply> to <TOP> in languages/perl6 and languages/abc grammars.


Modified: trunk/languages/abc/src/abc.pg
==============================================================================
--- trunk/languages/abc/src/abc.pg      (original)
+++ trunk/languages/abc/src/abc.pg      Mon Jan  8 11:46:35 2007
@@ -2,7 +2,7 @@
 
 ## an example 'bc' grammar
 
-token apply { <program> }
+token TOP { <program> }
 
 ## recognize terms
 token term { 

Modified: trunk/languages/perl6/src/grammar_rules.pg
==============================================================================
--- trunk/languages/perl6/src/grammar_rules.pg  (original)
+++ trunk/languages/perl6/src/grammar_rules.pg  Mon Jan  8 11:46:35 2007
@@ -18,8 +18,8 @@
 
 grammar Perl6::Grammar ;
 
-## C<apply> defines the top level rule to the HLLCompiler.
-token apply { <program> }
+## C<TOP> defines the top level rule to the HLLCompiler.
+token TOP { <program> }
 
 ## These regexes handle whitespace between comments and tokens
 

Modified: trunk/runtime/parrot/library/Parrot/HLLCompiler.pir
==============================================================================
--- trunk/runtime/parrot/library/Parrot/HLLCompiler.pir (original)
+++ trunk/runtime/parrot/library/Parrot/HLLCompiler.pir Mon Jan  8 11:46:35 2007
@@ -134,13 +134,16 @@
 .sub 'parse' :method
     .param pmc source
     .param pmc adverbs         :slurpy :named
-    .local pmc parsegrammar_name, apply
+    .local pmc parsegrammar_name, top
 
     parsegrammar_name = self.'parsegrammar'()
     unless parsegrammar_name goto err_no_parsegrammar
-    apply = get_hll_global parsegrammar_name, 'apply'
+    top = get_hll_global parsegrammar_name, 'TOP'
+    unless null top goto have_top                      # FIXME: deprecated
+    top = get_hll_global parsegrammar_name, 'apply'    # FIXME: deprecated
+  have_top:                                            # FIXME: deprecated
     .local pmc match
-    match = apply(source, 'grammar' => parsegrammar_name)
+    match = top(source, 'grammar' => parsegrammar_name)
     unless match goto err_failedparse
     .return (match)
 

Reply via email to