Author: kjs
Date: Tue Apr 10 02:22:23 2007
New Revision: 18110

Modified:
   trunk/compilers/pirc/src/pastout.c
   trunk/compilers/pirc/src/pirout.c
   trunk/compilers/pirc/src/pirparser.c
   trunk/compilers/pirc/src/pirvtable.c
   trunk/compilers/pirc/src/pirvtable.h

Log:
compilers/pirc:
* remove next_expr vtable method; this should really be handled in the 
back-ends (it is, after all, a lay-out thing)

Modified: trunk/compilers/pirc/src/pastout.c
==============================================================================
--- trunk/compilers/pirc/src/pastout.c  (original)
+++ trunk/compilers/pirc/src/pastout.c  Tue Apr 10 02:22:23 2007
@@ -206,20 +206,6 @@
 
 /*
 
-=item past_next()
-
-
-
-=cut
-
-*/
-static void
-past_next(struct emit_data *data) {
-    /* increment index */
-}
-
-/*
-
 =item past_destroy()
 
 
@@ -262,7 +248,6 @@
     vtable->op_start     = past_op;
     vtable->expression   = past_expr;
     vtable->op_end       = past_close;
-    vtable->next_expr    = past_next;
 
     vtable->data = (emit_data *)malloc(sizeof(emit_data));
     if (vtable->data == NULL) {

Modified: trunk/compilers/pirc/src/pirout.c
==============================================================================
--- trunk/compilers/pirc/src/pirout.c   (original)
+++ trunk/compilers/pirc/src/pirout.c   Tue Apr 10 02:22:23 2007
@@ -81,10 +81,6 @@
     fprintf(OUT, "  %s ", op);
 }
 
-static void
-pir_comma(struct emit_data *data) {
-    fprintf(OUT, ", ");
-}
 
 static void
 pir_list_start(struct emit_data *data) {
@@ -147,7 +143,6 @@
     vtable->op_start       = pir_op;
     vtable->op_end         = pir_newline;
     vtable->expression     = pir_expr;
-    vtable->next_expr      = pir_comma;
     vtable->list_start     = pir_list_start;
     vtable->list_end       = pir_list_end;
     vtable->sub_flag_start = pir_sub_flag_start;

Modified: trunk/compilers/pirc/src/pirparser.c
==============================================================================
--- trunk/compilers/pirc/src/pirparser.c        (original)
+++ trunk/compilers/pirc/src/pirparser.c        Tue Apr 10 02:22:23 2007
@@ -736,7 +736,6 @@
     while (p->curtoken != T_NEWLINE) {
         expression(p);
         if (p->curtoken == T_COMMA) {
-            emit_next_expr(p);
             next(p);
         }
         else break;
@@ -972,7 +971,6 @@
 
     while (p->curtoken == T_COMMA) {
         next(p); /* skip comma */
-        emit_next_expr(p);
 
         emit_expr(p, get_current_token(p->lexer));
         match(p, T_IDENTIFIER);
@@ -1051,7 +1049,6 @@
     match(p, T_LEX);
     emit_expr(p, get_current_token(p->lexer));
     match(p, T_STRING_CONSTANT);
-    emit_next_expr(p);
     match(p, T_COMMA);
     target(p);
     match(p, T_NEWLINE);
@@ -1144,7 +1141,6 @@
         emit_op_start(p, "unless");
         conditional_expression(p);
     }
-    emit_next_expr(p); /* indicate there's another expression coming */
     jump_statement(p);
 }
 
@@ -1169,7 +1165,6 @@
         emit_op_start(p, "if");
         conditional_expression(p);
     }
-    emit_next_expr(p); /* indicate there's another expression coming */
     jump_statement(p);
 }
 
@@ -1908,7 +1903,6 @@
         }
 
         if (p->curtoken == T_COMMA) {
-            emit_next_expr(p);
             next(p);
         }
         else wantmore = 0; /* no comma, so quit loop */

Modified: trunk/compilers/pirc/src/pirvtable.c
==============================================================================
--- trunk/compilers/pirc/src/pirvtable.c        (original)
+++ trunk/compilers/pirc/src/pirvtable.c        Tue Apr 10 02:22:23 2007
@@ -82,7 +82,6 @@
     vtable->type             = not_implemented;
     vtable->sub_flag         = not_implemented;
     vtable->expression       = not_implemented;
-    vtable->next_expr        = not_implemented;
     vtable->op_start         = not_implemented;
     vtable->op_end           = not_implemented;
     vtable->list_start       = not_implemented;

Modified: trunk/compilers/pirc/src/pirvtable.h
==============================================================================
--- trunk/compilers/pirc/src/pirvtable.h        (original)
+++ trunk/compilers/pirc/src/pirvtable.h        Tue Apr 10 02:22:23 2007
@@ -26,7 +26,6 @@
     void (* op_start)        (struct emit_data *data, char *op);
     void (* op_end)          (struct emit_data *data);
     void (* expression)      (struct emit_data *data, char *expr);
-    void (* next_expr)       (struct emit_data *data);
     void (* list_start)      (struct emit_data *data);
     void (* list_end)        (struct emit_data *data);
     void (* sub_flag_start)  (struct emit_data *data);
@@ -61,7 +60,6 @@
 #  define emit_op_start(P,O)       (*P->vtable->op_start)         
(P->vtable->data, O)
 #  define emit_op_end(P)           (*P->vtable->op_end)           
(P->vtable->data)
 #  define emit_expr(P,E)           (*P->vtable->expression)       
(P->vtable->data, E)
-#  define emit_next_expr(P)        (*P->vtable->next_expr)        
(P->vtable->data)
 #  define emit_list_start(P)       (*P->vtable->list_start)       
(P->vtable->data)
 #  define emit_list_end(P)         (*P->vtable->list_end)         
(P->vtable->data)
 #  define emit_method_name(P,N)    (*P->vtable->method_name)      
(P->vtable->data, N)

Reply via email to