vkd3d/libs
Francisco Casas 3d9baef321 vkd3d-shader/hlsl: Support initialization of implicit size arrays.
HLSL_ARRAY_ELEMENTS_COUNT_IMPLICIT (zero) is used as a temporal value
for elements_count for implicit size arrays.
This value is replaced by the correct one after parsing the initializer.

In case the implicit array is not initialized correctly, hlsl_error()
is called but the array size is kept at 0. So the rest of the code
must handle these cases.

In shader model 5.1, unlike in 5.0, declaring a multi-dimensional
object-type array with the last dimension implicit results in
an error. This happens even in presence of an initializer.

So, both gen_struct_fields() and declare_vars() first check if the
shader model is 5.1, the array elements are objects, and if there is
at least one implicit array size to handle the whole type as an
unbounded resource array.

Signed-off-by: Francisco Casas <fcasas@codeweavers.com>
2022-08-23 15:57:54 -05:00
..
vkd3d vkd3d: Do not store the latch bit in an object that could be overwritten. 2022-08-09 22:14:30 +02:00
vkd3d-common vkd3d-shader: Allow writing log output via a custom callback. 2022-06-07 19:38:49 +02:00
vkd3d-shader vkd3d-shader/hlsl: Support initialization of implicit size arrays. 2022-08-23 15:57:54 -05:00
vkd3d-utils Release 1.4. 2022-06-22 18:31:51 +02:00
.gitignore libs/vkd3d: Trace build version. 2018-06-27 22:43:49 +02:00