diff options
author | Tucker Evans <tuckerevans24@gmail.com> | 2019-09-30 13:26:59 -0400 |
---|---|---|
committer | Tucker Evans <tuckerevans24@gmail.com> | 2019-10-04 13:17:51 -0400 |
commit | 4c71083b074b5af0493d540bf8b971b2dc07311a (patch) | |
tree | d217e862470c2714d8a72d0115b29832e490265d | |
parent | e398b0beb33047b22a73d2d6a4302996dcdda67a (diff) |
Fix func_info members initialized after malloc
-rw-r--r-- | pc.l | 4 | ||||
-rw-r--r-- | pc.y | 3 |
2 files changed, 7 insertions, 0 deletions
@@ -3,6 +3,7 @@ #include "scope.h" #include "y.tab.h" #include "pc.h" +#include "assert.h" int line_num=1; extern scope *cur_scope; @@ -38,6 +39,9 @@ input { node *tmp; tmp = scope_insert(cur_scope, strdup("write")); tmp->func_info = malloc(sizeof(struct fi)); + assert(tmp->func_info); + tmp->func_info->argc = -1; + tmp->func_info->argv = NULL; return IO; } @@ -219,6 +219,7 @@ sub_prog_head tmp->func_info = malloc(sizeof(struct fi)); assert(tmp->func_info); + tmp->func_info->argv = NULL; tmp->func_info->argc = i; assert(tmp->func_info->argv = malloc(i * sizeof(int))); @@ -247,7 +248,9 @@ sub_prog_head tmp->func_info = malloc(sizeof(struct fi)); assert(tmp->func_info); + tmp->func_info->argv = NULL; tmp->func_info->argc = i; + assert(tmp->func_info->argv = malloc(i * sizeof(int))); assert(!set_func_types($3, tmp->func_info->argv, i)); |