From b00b7bd29037f25ee155f07e74fcb5de44918926 Mon Sep 17 00:00:00 2001 From: Andrew Kelley Date: Sun, 10 Sep 2017 00:34:44 -0400 Subject: variables are allowed to be pointers to opaque --- src/ir.cpp | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'src/ir.cpp') diff --git a/src/ir.cpp b/src/ir.cpp index 5771fd480d..487f5897e4 100644 --- a/src/ir.cpp +++ b/src/ir.cpp @@ -9828,7 +9828,11 @@ static VarClassRequired get_var_class_required(TypeTableEntry *type_entry) { return VarClassRequiredConst; case TypeTableEntryIdPointer: - return get_var_class_required(type_entry->data.pointer.child_type); + if (type_entry->data.pointer.child_type->id == TypeTableEntryIdOpaque) { + return VarClassRequiredAny; + } else { + return get_var_class_required(type_entry->data.pointer.child_type); + } case TypeTableEntryIdArray: return get_var_class_required(type_entry->data.array.child_type); case TypeTableEntryIdMaybe: -- cgit v1.2.3