-
Notifications
You must be signed in to change notification settings - Fork 18
/
Copy pathdeclaration.h
37 lines (32 loc) · 1007 Bytes
/
declaration.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
#ifndef __DECLARATION_H__
#define __DECLARATION_H__
int is_new_symbol(
struct SymbolTable *t,
int storage_class,
int primitive_type,
struct SymbolTable *composite_type
);
int convert_token_2_primitive_type(
struct SymbolTable **composite_type,
int *storage_class
);
int convert_multiply_token_2_primitive_type(int primitive_type);
int convert_literal_token_2_integer_value(int primitive_type);
int convert_type_casting_token_2_primitive_type(struct SymbolTable **composite_type);
int parse_typedef_declaration(struct SymbolTable **composite_type);
int parse_type_of_typedef_declaration(char *name, struct SymbolTable **composite_type);
struct SymbolTable *parse_function_declaration(
int primitive_type,
char *function_name,
struct SymbolTable *composite_type,
int storage_class
);
int parse_declaration_list(
struct SymbolTable **composite_type,
int storage_class,
int end_token,
int end_token_2,
struct ASTNode **glue_tree
);
void parse_global_declaration(void);
#endif