So the other MR was merged and I have to comment here. Creating word documents no longer works after the rebase. There was a trick to get it working if you use the New tab instead of the Home tab, but that doesn't work either now. Opening Word documents still works.
This problem relates to X11. It and other force-closes print logs related to X11 BadWindow. Some things worked in Openbox, some things worked in kwin-wayland XWayland.
--
https://gitlab.winehq.org/wine/wine/-/merge_requests/2377#note_27007
This node type is intended for use during parse-time.
While we parse an indexing expression such as `a[3]`, we don't know if
it will end up as part of an expression (in which case it must be folded
into a load) or it is for the lhs of a store (in which case it must be
folded into the store's deref). This node type is used to represent these accesses and no longer rely on building an `hlsl_ir_load` for each array index or struct record access.
`hlsl_ir_index` chains are lowered into derefs when (and if) they are used to specify the lhs of an assignment. All `hlsl_ir_index`es are lowered into `hlsl_ir_load`s with a compilation pass.
The changes introduced in these series allow to solve the problem with the return variable of function calls presented in !93, and to properly support assignment to matrix indexes, which is something we are not doing correctly.
Further patches (in my [index node](https://gitlab.winehq.org/fcasas/vkd3d/-/commits/index_node) branch) add support for indexing non-load expressions, such as `(a + b)[1]` and allowing to represent resource loads through `hlsl_ir_index`, so that `hlsl_ir_resource_store`s don't have to rely on `hlsl_ir_resource_load`s.
--
https://gitlab.winehq.org/wine/vkd3d/-/merge_requests/124