From 73af7100416e1627d1de0aaa94983f56406a9d49 Mon Sep 17 00:00:00 2001 From: Tim Foley Date: Tue, 12 Feb 2019 15:13:00 -0800 Subject: Track stage for varying sub-fields (#842) Fixes #841 This reverts a small change made in #815 that seemed innocent at the time: we stopped tracking an explicit `Stage` to go with every `VarLayout` that is part of an entry-point varying parameter, and instead only associated the stage with the top-level parameter. That change ended up breaking the logic to emit the `flat` modifier automatically for integer type fragment-shader inputs for GLSL, but we didn't have a regression test to catch that case. This change adds a regression test to cover this case, and adds the small number of lines that were removed from `parameter-binding.cpp`. A few other test outputs had to be updated for the change (these are outputs that were changed in #815 for the same reason). --- tests/reflection/sample-rate-input.hlsl.expected | 2 ++ 1 file changed, 2 insertions(+) (limited to 'tests/reflection/sample-rate-input.hlsl.expected') diff --git a/tests/reflection/sample-rate-input.hlsl.expected b/tests/reflection/sample-rate-input.hlsl.expected index ec6cfca6e..0c86ebecb 100644 --- a/tests/reflection/sample-rate-input.hlsl.expected +++ b/tests/reflection/sample-rate-input.hlsl.expected @@ -29,6 +29,7 @@ standard output = { "scalarType": "float32" } }, + "stage": "fragment", "binding": {"kind": "varyingInput", "index": 0}, "semanticName": "EXTRA" }, @@ -42,6 +43,7 @@ standard output = { "scalarType": "float32" } }, + "stage": "fragment", "binding": {"kind": "varyingInput", "index": 1}, "semanticName": "COLOR" } -- cgit v1.2.3