Semantic test left over from other source languages is removed, since this is permitted by HLSL.
Also, to support the functionality, a targeted test is performed for this case and it is
turned into a EvqGlobal qualifier to create an AST initialization segment when needed.
Constness is now propagated up aggregate chains during initializer construction. This
handles hierarchical cases such as the distinction between:
static const float2 a[2] = { { 1, 2 }, { 3, 4} };
vs
static const float2 a[2] = { { 1, 2 }, { cbuffer_member, 4} };
The first of which can use a first class constant initalization, and the second cannot.
| Name |
Last commit
|
Last update |
|---|---|---|
| External | Loading commit data... | |
| OGLCompilersDLL | Loading commit data... | |
| SPIRV | Loading commit data... | |
| StandAlone | Loading commit data... | |
| Test | Loading commit data... | |
| glslang | Loading commit data... | |
| gtests | Loading commit data... | |
| hlsl | Loading commit data... | |
| .appveyor.yml | Loading commit data... | |
| .clang-format | Loading commit data... | |
| .gitattributes | Loading commit data... | |
| .gitignore | Loading commit data... | |
| .travis.yml | Loading commit data... | |
| CMakeLists.txt | Loading commit data... | |
| ChooseMSVCCRT.cmake | Loading commit data... | |
| README-spirv-remap.txt | Loading commit data... | |
| README.md | Loading commit data... | |
| make-revision | Loading commit data... |