Skip to content

Bug with complicated function dependencies#730

Open
m0ose wants to merge 1 commit into
gpujs:developfrom
RedfishGroup:bug-complicated-functions
Open

Bug with complicated function dependencies#730
m0ose wants to merge 1 commit into
gpujs:developfrom
RedfishGroup:bug-complicated-functions

Conversation

@m0ose

@m0ose m0ose commented Dec 1, 2021

Copy link
Copy Markdown
Contributor

There was a bug when someone added a bunch of interdependent functions. I think it had to do with the order that they were declared in the shader.
Here is a fix and a test for #727.

@fuzzie360

Copy link
Copy Markdown
Member

This looks like a real fix for #727 and the 16-function dependency test is appreciated. One concern before we merge: the reworked traceFunctionCalls recurses into callees unconditionally, so a cyclic call graph (a→b→a) that previously terminated would now recurse infinitely — hanging instead of erroring. Cycles are invalid for GLSL anyway, but a guard (e.g. a currently-tracing set that throws a descriptive error on re-entry) would make this safe. Would you be up for adding that? If not, say the word and we will take it over the finish line — CI now validates every PR automatically.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants