[cig-commits] r6525 - in cs/babel/trunk/spike: . Spike/Compiler

leif at geodynamics.org leif at geodynamics.org
Sun Apr 8 02:28:44 PDT 2007


Author: leif
Date: 2007-04-08 02:28:43 -0700 (Sun, 08 Apr 2007)
New Revision: 6525

Modified:
   cs/babel/trunk/spike/
   cs/babel/trunk/spike/Spike/Compiler/parser.pyx
Log:
Fixed some bugs.


Property changes on: cs/babel/trunk/spike
___________________________________________________________________
Name: svn:ignore
   - Makefile.in

   + Makefile
Makefile.in


Modified: cs/babel/trunk/spike/Spike/Compiler/parser.pyx
===================================================================
--- cs/babel/trunk/spike/Spike/Compiler/parser.pyx	2007-04-08 05:20:37 UTC (rev 6524)
+++ cs/babel/trunk/spike/Spike/Compiler/parser.pyx	2007-04-08 09:28:43 UTC (rev 6525)
@@ -44,8 +44,6 @@
      PostfixDecNode, \
      PostfixIncNode, \
      SimpleCallNode, \
-     SizeofTypeNode, \
-     SizeofVarNode, \
      StringNode
 
 
@@ -111,7 +109,10 @@
      TildeNode, \
      NotNode, \
      PrefixIncNode, \
-     PrefixDecNode
+     PrefixDecNode, \
+     SizeofVarNode, \
+     SizeofTypeNode, \
+     TypecastNode
 
 unop_node_classes = {
     '&':  AmpersandNode,
@@ -135,12 +136,14 @@
 
 cdef public object sizeof_type_expr(object keyword, object type_name):
     _, pos = keyword
-    base_type, declarator = type_name
+    type_specifier_list, declarator = type_name
+    base_type = type_specifier_list.analyse_type()
     return SizeofTypeNode(pos, base_type = base_type, declarator = declarator)
 
 cdef public object cast_expr(object lparen, object type_name, object operand):
     _, pos = lparen
-    base_type, declarator = type_name
+    type_specifier_list, declarator = type_name
+    base_type = type_specifier_list.analyse_type()
     return TypecastNode(pos, base_type = base_type, declarator = declarator, operand = operand)
 
 



More information about the cig-commits mailing list