aboutsummaryrefslogtreecommitdiff
path: root/src/checker.cpp
diff options
context:
space:
mode:
authorgingerBill <bill@gingerbill.org>2018-08-14 17:07:56 +0100
committergingerBill <bill@gingerbill.org>2018-08-14 17:07:56 +0100
commitacc010cba5df63b38704245254e721187335a7b2 (patch)
tree2b92d291e6c3804f6e5cc177c5ed0443798d1f8d /src/checker.cpp
parent89f4e7a8dbed4272f85f10568a542697aa3b38f8 (diff)
Add `bit_set` type
Diffstat (limited to 'src/checker.cpp')
-rw-r--r--src/checker.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/checker.cpp b/src/checker.cpp
index a8ca75610..96e5446d4 100644
--- a/src/checker.cpp
+++ b/src/checker.cpp
@@ -1043,6 +1043,10 @@ void add_type_info_type(CheckerContext *c, Type *t) {
add_type_info_type(c, bt->Enum.base_type);
break;
+ case Type_BitSet:
+ add_type_info_type(c, bt->BitSet.base_type);
+ break;
+
case Type_Union:
add_type_info_type(c, t_int);
add_type_info_type(c, t_type_info_ptr);
@@ -1600,6 +1604,7 @@ void init_core_type_info(Checker *c) {
t_type_info_enum = find_core_type(c, str_lit("Type_Info_Enum"));
t_type_info_map = find_core_type(c, str_lit("Type_Info_Map"));
t_type_info_bit_field = find_core_type(c, str_lit("Type_Info_Bit_Field"));
+ t_type_info_bit_set = find_core_type(c, str_lit("Type_Info_Bit_Set"));
t_type_info_named_ptr = alloc_type_pointer(t_type_info_named);
t_type_info_integer_ptr = alloc_type_pointer(t_type_info_integer);
@@ -1621,6 +1626,7 @@ void init_core_type_info(Checker *c) {
t_type_info_enum_ptr = alloc_type_pointer(t_type_info_enum);
t_type_info_map_ptr = alloc_type_pointer(t_type_info_map);
t_type_info_bit_field_ptr = alloc_type_pointer(t_type_info_bit_field);
+ t_type_info_bit_set_ptr = alloc_type_pointer(t_type_info_bit_set);
}
void init_mem_allocator(Checker *c) {