changeset 827:d7b3dc41972f

rvalue_t separation.
author Shinji KONO <kono@ie.u-ryukyu.ac.jp>
date Sat, 27 Nov 2010 13:05:25 +0900
parents 313750f582dd
children d0f48d1ea798
files mc-codegen.c
diffstat 1 files changed, 6 insertions(+), 2 deletions(-) [+]
line wrap: on
line diff
--- a/mc-codegen.c	Sat Nov 27 09:29:16 2010 +0900
+++ b/mc-codegen.c	Sat Nov 27 13:05:25 2010 +0900
@@ -4355,6 +4355,7 @@
     int op,c;
     NMTBL *n;    
     int type0 = type_value(type);
+    int stype;
 
     if (e==0) error(-1);
     op = 0;
@@ -4425,8 +4426,11 @@
     case IVAR: case ARRAY: case PERIOD: case ARROW:
 	return(indirect(RINDIRECT+op,e,type0));   // RIVAR?
     case CAST:
-	op = rvalue_t(cadr(e),cadddr(e));
-	return list4(CAST,op,caddr(e),cadddr(e));  // should be RCAST?
+	stype = type;
+	type = cadddr(e);
+	op = rvalue(cadr(e));
+	e = list4(CAST,op,caddr(e),cadddr(e));  // should be RCAST?
+	type = stype;
     default:return(e); /* idempotent case? */
     }
 }