• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

shader-slang / slang-rhi / 25387161575

05 May 2026 03:54PM UTC coverage: 68.73% (+0.01%) from 68.717%
25387161575

push

github

web-flow
Fix varLayout assertion failure when importing module with global ConstantBuffer (#701)

* Fix varLayout assertion when importing module with global ConstantBuffer

ShaderProgram::init() creates a composite component type from module and entry points but never calls link() on it. When the Slang compiler later performs layout reflection or code generation on this unlinked composite, it hits an internal assertion because variable layout information has not been resolved.

- Call link() after createCompositeComponentType in SingleProgram path
- Add defensive null checks for getElementVarLayout/getContainerVarLayout in Vulkan, WGPU, and D3D12 backend layout code
- Add test for imported module with global ConstantBuffer

* Refactor ShaderProgram initialization logic and simplify test case for imported constant buffer

* Remove fastpath for non-entry shader in shader.cpp and omit CPU from imported constant buffer testing

* Fix loadProgram API contract and re-enable shader fast-path

12021 of 20330 branches covered (59.13%)

Branch coverage included in aggregate %.

10 of 10 new or added lines in 2 files covered. (100.0%)

16 existing lines in 1 file now uncovered.

35485 of 48790 relevant lines covered (72.73%)

235936.08 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

65.18
/src/cuda/optix-api-impl.cpp


Source Not Available

STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc