transform: Fix Manager::Run() with no transforms
If there are transforms added to the manager, then Run() would output an empty module. Fix this. Bug: tint:390 Bug: tint:389 Change-Id: I439fe7a28816761f3702e304ef130b7a6992ecce Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/35280 Reviewed-by: dan sinclair <dsinclair@chromium.org> Commit-Queue: Ben Clayton <bclayton@google.com>
This commit is contained in:
parent
f3717fa249
commit
7a0daa233d
|
@ -24,6 +24,7 @@ Manager::~Manager() = default;
|
|||
|
||||
Transform::Output Manager::Run(ast::Module* module) {
|
||||
Output out;
|
||||
if (!transforms_.empty()) {
|
||||
for (auto& transform : transforms_) {
|
||||
auto res = transform->Run(module);
|
||||
out.module = std::move(res.module);
|
||||
|
@ -33,8 +34,11 @@ Transform::Output Manager::Run(ast::Module* module) {
|
|||
}
|
||||
module = &out.module;
|
||||
}
|
||||
} else {
|
||||
out.module = module->Clone();
|
||||
}
|
||||
|
||||
TypeDeterminer td(module);
|
||||
TypeDeterminer td(&out.module);
|
||||
if (!td.Determine()) {
|
||||
diag::Diagnostic err;
|
||||
err.severity = diag::Severity::Error;
|
||||
|
|
Loading…
Reference in New Issue