| ... | @@ -3753,13 +3753,13 @@ static bool is_container(TypeTableEntry *type_entry) { | ... | @@ -3753,13 +3753,13 @@ static bool is_container(TypeTableEntry *type_entry) { |
| 3753 | } | 3753 | } |
| 3754 | | 3754 | |
| 3755 | bool is_container_ref(TypeTableEntry *type_entry) { | 3755 | bool is_container_ref(TypeTableEntry *type_entry) { |
| 3756 | return (type_entry->id == TypeTableEntryIdPointer) ? | 3756 | return (type_entry->id == TypeTableEntryIdPointer && type_entry->data.pointer.ptr_len == PtrLenSingle) ? |
| 3757 | is_container(type_entry->data.pointer.child_type) : is_container(type_entry); | 3757 | is_container(type_entry->data.pointer.child_type) : is_container(type_entry); |
| 3758 | } | 3758 | } |
| 3759 | | 3759 | |
| 3760 | TypeTableEntry *container_ref_type(TypeTableEntry *type_entry) { | 3760 | TypeTableEntry *container_ref_type(TypeTableEntry *type_entry) { |
| 3761 | assert(is_container_ref(type_entry)); | 3761 | assert(is_container_ref(type_entry)); |
| 3762 | return (type_entry->id == TypeTableEntryIdPointer) ? | 3762 | return (type_entry->id == TypeTableEntryIdPointer && type_entry->data.pointer.ptr_len == PtrLenSingle) ? |
| 3763 | type_entry->data.pointer.child_type : type_entry; | 3763 | type_entry->data.pointer.child_type : type_entry; |
| 3764 | } | 3764 | } |
| 3765 | | 3765 | |