[naga] [glsl-in] Crashes when we go over a certain nested stack depth (including if/else chains) #5652
Labels
area: naga front-end
lang: GLSL
OpenGL Shading Language
naga
Shader Translator
type: bug
Something isn't working
Description
It seems that glsl-in crashes after a certain recursion limit; the call stack is blown.
Repro steps
https://gist.github.com/magcius/b53f33c9135355fe7fed542a748c60b3
Expected vs observed behavior
I'd expect a successful parse, or at least an error, rather than a crash.
Extra materials
This was found when trying to translate this shader to WGSL for noclip.website, which uses Naga to transform GLSL to WGSL for the WebGPU backend. https://github.com/magcius/noclip.website/blob/fe8dd8f74d93579296e7d087147de0b3a1bfcebd/src/MarioKart8Deluxe/Render.ts#L534-L597
Platform
wgpu commit bdf30fa. This was found with a version of Naga compiled to WebAssembly, but it crashes anywhere.
The text was updated successfully, but these errors were encountered: