X-Git-Url: https://git.decadent.org.uk/gitweb/?p=nfs-utils.git;a=blobdiff_plain;f=tools%2Frpcgen%2Frpc_parse.c;h=70d1260e12f1ab2df493bceb1eedb43409aac523;hp=1e5b80a2c783f26e8694b59065ab490ce15c674a;hb=2e075a16da4963f54cd556403ca9e15a68de27fd;hpb=8b7ad01b14df1e7529b9ba8a1ea17df0d6004ef9 diff --git a/tools/rpcgen/rpc_parse.c b/tools/rpcgen/rpc_parse.c index 1e5b80a..70d1260 100644 --- a/tools/rpcgen/rpc_parse.c +++ b/tools/rpcgen/rpc_parse.c @@ -94,6 +94,7 @@ get_definition(void) def_const(defp); break; case TOK_EOF: + free(defp); return (NULL); default: error("definition keyword expected"); @@ -288,9 +289,8 @@ def_union(definition *defp) { token tok; declaration dec; - case_list *cases,*tcase; + case_list *cases; case_list **tailp; - int flag; defp->def_kind = DEF_UNION; scan(TOK_IDENT, &tok); @@ -309,7 +309,6 @@ def_union(definition *defp) cases->case_name = tok.str; scan(TOK_COLON, &tok); /* now peek at next token */ - flag=0; if(peekscan(TOK_CASE,&tok)) { @@ -325,14 +324,6 @@ def_union(definition *defp) }while(peekscan(TOK_CASE,&tok)); } - else - if(flag) - { - - *tailp = cases; - tailp = &cases->next; - cases = ALLOC(case_list); - }; get_declaration(&dec, DEF_UNION); cases->case_decl = dec; @@ -564,8 +555,8 @@ get_type(char **prefixp, char **typep, defkind dkind) *typep = "short"; (void) peekscan(TOK_INT, &tok); break; - case TOK_LONG: - *typep = "long"; + case TOK_INT32: + *typep = "int32_t"; (void) peekscan(TOK_INT, &tok); break; case TOK_VOID: @@ -604,9 +595,9 @@ unsigned_dec(char **typep) *typep = "u_short"; (void) peekscan(TOK_INT, &tok); break; - case TOK_LONG: + case TOK_INT32: get_token(&tok); - *typep = "u_long"; + *typep = "u_int32_"; (void) peekscan(TOK_INT, &tok); break; case TOK_INT: