Jelajahi Sumber

Parser cleanup

Taddeus Kroes 12 tahun lalu
induk
melakukan
34274a615f
1 mengubah file dengan 5 tambahan dan 4 penghapusan
  1. 5 4
      parser.mly

+ 5 - 4
parser.mly

@@ -103,14 +103,15 @@ decl:
   { let loc = loc $startpos(name) $endpos(name) in
     GlobalDef (export, ArrayDims (ctype, dims), name, None, loc) }
 
+%inline ret_type:
+    | t=basic_type  { t }
+    | VOID          { Void }
+
 fun_header:
   (* function header: use location of function name *)
-  | ret=basic_type name=ID LPAREN params=clist(param) RPAREN
+  | ret=ret_type name=ID LPAREN params=clist(param) RPAREN
   { (ret, name, params, loc $startpos(name) $endpos(name)) }
 
-  | VOID name=ID LPAREN params=clist(param) RPAREN
-  { (Void, name, params, loc $startpos(name) $endpos(name)) }
-
 param:
   (* parameter: use location of parameter name *)
   | ctype=basic_type name=ID