Fix some missing operators not getting parsed properly. Fixed field access type checking with depth more than 1.
This commit is contained in:
@@ -1621,11 +1621,7 @@ types_compatible :: (checker : *Semantic_Checker, lhs : Type_Variable_Handle, rh
|
||||
case .Texture2D; {
|
||||
return rhs_var.type == lhs_var.type;
|
||||
}
|
||||
case .Struct; {
|
||||
if rhs_var.type != .Struct {
|
||||
return false;
|
||||
}
|
||||
|
||||
case .Struct; {
|
||||
lhs_node := lhs_var.source_node;
|
||||
rhs_node := rhs_var.source_node;
|
||||
|
||||
@@ -1639,6 +1635,11 @@ types_compatible :: (checker : *Semantic_Checker, lhs : Type_Variable_Handle, rh
|
||||
}
|
||||
}
|
||||
|
||||
if rhs_var.type != .Struct {
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
lhs_struct := find_symbol(checker, lhs_var.typename, xx 1);
|
||||
rhs_struct := find_symbol(checker, rhs_var.typename, xx 1);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user