writer/wgsl: Handle inferred-type variable declarations
Fixes a null-pointer deference crash.
Bug: tint:672
Change-Id: Icfcb1c8754950ea0e074a0b392d0b34748a13827
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/48225
Commit-Queue: Ben Clayton <bclayton@chromium.org>
Reviewed-by: James Price <jrprice@google.com>
diff --git a/src/writer/wgsl/generator_impl.cc b/src/writer/wgsl/generator_impl.cc
index 156b266..a93a5bf 100644
--- a/src/writer/wgsl/generator_impl.cc
+++ b/src/writer/wgsl/generator_impl.cc
@@ -598,9 +598,13 @@
}
}
- out_ << " " << program_->Symbols().NameFor(var->symbol()) << " : ";
- if (!EmitType(sem->DeclaredType())) {
- return false;
+ out_ << " " << program_->Symbols().NameFor(var->symbol());
+
+ if (var->declared_type()) {
+ out_ << " : ";
+ if (!EmitType(var->declared_type())) {
+ return false;
+ }
}
if (var->constructor() != nullptr) {