stage1 支持指针运算 提供新的类型检查计算
This commit is contained in:
1 parent
be41a82d55
commit
06f3884c30
12 files changed
+572
-321
No files matched your search
+5
-8
@@ -2,12 +2,12 @@
|
||||
#define __SPL_AST_H__
|
||||
|
||||
#include "../stage0/include/utils.h"
|
||||
#include "spl_attr.h"
|
||||
#include "spl_dbg.h"
|
||||
#include "spl_lexer.h"
|
||||
#include "spl_mpa.h"
|
||||
#include "spl_tok.h"
|
||||
|
||||
#include "spl_attr.h"
|
||||
|
||||
/* clang-format off */
|
||||
#define SPL_AST_KIND_TABLE \
|
||||
X(SPL_AST_NONE, V0, none) \
|
||||
@@ -139,6 +139,7 @@ typedef enum {
|
||||
SPL_UNARY_OP_NOT,
|
||||
SPL_UNARY_OP_BIT_NOT,
|
||||
SPL_UNARY_OP_ADDRESS,
|
||||
SPL_UNARY_OP_DEREF,
|
||||
} spl_unary_op_t;
|
||||
|
||||
const char *spl_binary_op_name(spl_binary_op_t op);
|
||||
@@ -291,12 +292,8 @@ struct spl_ast_node {
|
||||
} label;
|
||||
|
||||
/* ---- 表达式子类型 ---- */
|
||||
struct {
|
||||
isize val;
|
||||
} int_lit;
|
||||
struct {
|
||||
double val;
|
||||
} float_lit;
|
||||
spl_mpa_int_t int_lit;
|
||||
spl_mpa_float_t float_lit;
|
||||
struct {
|
||||
char val;
|
||||
} char_lit;
|
||||
|
||||
Reference in new issue
Block a user