writer/msl: Add TINT_UNIMPLEMENTED() for module-scope vars Module scope variables of the private and workgroup storage class are not currently implemeted. Change-Id: Ibb73faec5b5bcb11199e07ba4d7aa4df9c875450 Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/48221 Kokoro: Kokoro <noreply+kokoro@google.com> Reviewed-by: James Price <jrprice@google.com> Commit-Queue: Ben Clayton <bclayton@google.com>
diff --git a/src/writer/msl/generator_impl.cc b/src/writer/msl/generator_impl.cc index 74e05e4..b50c263 100644 --- a/src/writer/msl/generator_impl.cc +++ b/src/writer/msl/generator_impl.cc
@@ -96,11 +96,22 @@ } for (auto* var : program_->AST().GlobalVariables()) { - if (!var->is_const()) { - continue; - } - if (!EmitProgramConstVariable(var)) { - return false; + if (var->is_const()) { + if (!EmitProgramConstVariable(var)) { + return false; + } + } else { + auto* sem = program_->Sem().Get(var); + switch (sem->StorageClass()) { + case ast::StorageClass::kPrivate: + case ast::StorageClass::kWorkgroup: + TINT_UNIMPLEMENTED(diagnostics_) + << "crbug.com/tint/726: module-scope private and workgroup " + "variables not yet implemented"; + break; + default: + break; // Handled by another code path + } } }