macros/class: Propagate cfg annotations to COM class methods - #234
macros/class: Propagate cfg annotations to COM class methods#234Marijn Suijten (MarijnS95) wants to merge 2 commits into
cfg annotations to COM class methods#234Conversation
|
Alternatively we could have that |
d522576 to
c8256cb
Compare
|
Hi! Is there any update on this PR, our game engine has a dependency in our shader building infra which is Linux only to the DirectXShaderCompiler and we use hassle-rs. Legacy non Microsoft Com library is unmaintained and still causing us issues. Having DirectXShaderCompiler + Rust working properly is important for the professional game development community which uses HLSL most of the time, especially that Rust is taking more and more it's place in the tooling side games! |
|
Ryan Levick (@rylev) can we get a review, merge and release for #235 and this PR (#234)? That would make us able to start using |
We have a very peculiar workaround for DXC (pending upstream fix [microsoft/DirectXShaderCompiler#3793]) that requires us to conditionally provide function implementations for extra vtable "spacers": https://github.com/Traverse-Research/hassle-rs/blob/f5a090c70bbcf66f3bafd3d549716a414e873838/src/wrapper.rs#L130-L139. The spacers are conditionally defined in: https://github.com/Traverse-Research/hassle-rs/blob/f5a090c70bbcf66f3bafd3d549716a414e873838/src/unknown.rs. These need to be forwarded otherwise the initialization of these vtable members will happen unconditionally even when they don't exist: https://github.com/Traverse-Research/hassle-rs/actions/runs/1777800733 Fixes microsoft#166 [microsoft/DirectXShaderCompiler#3793]: microsoft/DirectXShaderCompiler#3793
c8256cb to
07148b2
Compare
|
Ryan Levick (@rylev) not sure if you still intend to at least merge outstanding PRs and make another release (and at also push the missing tags to this repo), but I don't really care about following up on this anymore as the upstream fix has finally made its way in, so I can use published |
We have a very peculiar workaround for DXC (pending upstream
fixsolution microsoft/DirectXShaderCompiler#3793) that requires us to conditionally provide function implementations for extra vtable "spacers": https://github.com/Traverse-Research/hassle-rs/blob/f5a090c70bbcf66f3bafd3d549716a414e873838/src/wrapper.rs#L130-L139. The spacers are conditionally defined in: https://github.com/Traverse-Research/hassle-rs/blob/f5a090c70bbcf66f3bafd3d549716a414e873838/src/unknown.rs.These need to be forwarded otherwise the initialization of these vtable members will happen unconditionally even when they don't exist: https://github.com/Traverse-Research/hassle-rs/actions/runs/1777800733
Fixes #166