aboutsummaryrefslogtreecommitdiff
path: root/src/ir.cpp
diff options
context:
space:
mode:
authorAndrew Kelley <superjoe30@gmail.com>2017-09-10 00:34:44 -0400
committerAndrew Kelley <superjoe30@gmail.com>2017-09-10 00:34:44 -0400
commitb00b7bd29037f25ee155f07e74fcb5de44918926 (patch)
tree7f8099a954d8ca7b09befe8c2aa2209c20be7d97 /src/ir.cpp
parentb5d9584e6fc9e113435e0d555c2df62379cdcb8b (diff)
downloadzig-b00b7bd29037f25ee155f07e74fcb5de44918926.tar.gz
zig-b00b7bd29037f25ee155f07e74fcb5de44918926.zip
variables are allowed to be pointers to opaque
Diffstat (limited to 'src/ir.cpp')
-rw-r--r--src/ir.cpp6
1 files changed, 5 insertions, 1 deletions
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: