File tree Expand file tree Collapse file tree 4 files changed +8
-6
lines changed Expand file tree Collapse file tree 4 files changed +8
-6
lines changed Original file line number Diff line number Diff line change 1
1
#include <stdlib.h>
2
2
3
3
#include "ast.h"
4
+ #include "func.h"
4
5
5
6
struct Node * make_node (int type , struct Node * op1 , struct Node * op2 , int val )
6
7
{
7
- struct Node * node = malloc (sizeof (struct Node ));
8
+ struct Node * node = safe_malloc (sizeof (struct Node ));
8
9
node -> type = type ;
9
10
node -> val = val ;
10
11
node -> op1 = op1 ;
Original file line number Diff line number Diff line change @@ -38,7 +38,7 @@ struct Token lex()
38
38
default :
39
39
// ID
40
40
if (isalpha (ch )) {
41
- char * id_name = malloc (MAX_LEN );
41
+ char * id_name = safe_malloc (MAX_LEN );
42
42
int len = 0 ;
43
43
id_name [len ++ ] = ch ;
44
44
do {
Original file line number Diff line number Diff line change @@ -47,7 +47,7 @@ static void expect(int type)
47
47
48
48
static struct Node * factor ()
49
49
{
50
- struct Node * node = malloc (sizeof (struct Node ));
50
+ struct Node * node = safe_malloc (sizeof (struct Node ));
51
51
node -> op1 = NULL ;
52
52
node -> op2 = NULL ;
53
53
@@ -90,7 +90,7 @@ static struct Node *expr()
90
90
91
91
int tok_attr = tok .attr ;
92
92
if (accept_two (ID , EQ )) {
93
- node = malloc (sizeof (struct Node ));
93
+ node = safe_malloc (sizeof (struct Node ));
94
94
node -> type = SET_TYPE ;
95
95
node -> op1 = make_node (VAR_TYPE , 0 , 0 , tok_attr );
96
96
node -> op2 = expr ();
@@ -110,7 +110,7 @@ static struct Node *expr()
110
110
111
111
struct Node * produce ()
112
112
{
113
- struct Node * node = malloc (sizeof (struct Node ));
113
+ struct Node * node = safe_malloc (sizeof (struct Node ));
114
114
node -> op1 = expr ();
115
115
node -> op2 = NULL ;
116
116
Original file line number Diff line number Diff line change 2
2
#include <string.h>
3
3
4
4
#include "sym.h"
5
+ #include "func.h"
5
6
6
7
struct Table * symbol_table [MAX_SYMBOL_TABLE_SIZE ];
7
8
int table_size = 0 ;
@@ -19,7 +20,7 @@ int add_sym(char *name)
19
20
return symbol_table [i ]-> id ;
20
21
}
21
22
22
- struct Table * item = malloc (sizeof (struct Table ));
23
+ struct Table * item = safe_malloc (sizeof (struct Table ));
23
24
item -> id = table_size ;
24
25
item -> name = name ;
25
26
You can’t perform that action at this time.
0 commit comments