Add bit_field as a keyword

This commit is contained in:
gingerBill
2024-02-22 14:01:23 +00:00
parent 42d595f6a1
commit 213b2fd0f8
3 changed files with 7 additions and 2 deletions

View File

@@ -137,6 +137,7 @@ Token_Kind :: enum u32 {
Union, // union
Enum, // enum
Bit_Set, // bit_set
Bit_Field, // bit_field
Map, // map
Dynamic, // dynamic
Auto_Cast, // auto_cast
@@ -270,6 +271,7 @@ tokens := [Token_Kind.COUNT]string {
"union",
"enum",
"bit_set",
"bit_field",
"map",
"dynamic",
"auto_cast",

View File

@@ -106,6 +106,7 @@ TOKEN_KIND(Token__KeywordBegin, ""), \
TOKEN_KIND(Token_union, "union"), \
TOKEN_KIND(Token_enum, "enum"), \
TOKEN_KIND(Token_bit_set, "bit_set"), \
TOKEN_KIND(Token_bit_field, "bit_field"), \
TOKEN_KIND(Token_map, "map"), \
TOKEN_KIND(Token_dynamic, "dynamic"), \
TOKEN_KIND(Token_auto_cast, "auto_cast"), \

View File

@@ -4114,8 +4114,10 @@ gb_internal isize check_is_assignable_to_using_subtype(Type *src, Type *dst, isi
}
if (allow_polymorphic && dst_is_polymorphic) {
Type *fb = base_type(type_deref(f->type));
if (fb->kind == Type_Struct && fb->Struct.polymorphic_parent == dst) {
return true;
if (fb->kind == Type_Struct) {
if (fb->Struct.polymorphic_parent == dst) {
return true;
}
}
}