dan sinclair
dan sinclair
Ah, I missed the final `*` which lets `shift_expression.post.unary_expression` expand to nothing.
No, my comment means the spec is correct. I mis-read the grammar line and missed the trailing `*` when reading.
The errors will only get generated during compilation time. We only const-eval `const` and `override` values. A value in a `let` or `var` does not get const-eval'd at compilation time...
I'm not sure if I understand, so you're doing a const-eval, and producing an INF or NaN already? Or you're doing partial const-eval and are concerned that when those constants...
That error is running into a separate issue in that, you can't really write `INF` or `NaN` in WGSL. Even if you stopped the `%2` from folding, if you emit...
We can detect the infinity when we do constant evaluation. If the result of the calculation is infinity, and the diagnostic has been enabled to flush inf/nan to 0 we...
For HLSL, GLSL and SPIR-V it appears that the `greater` is actually `greater_or_equal` and `less` is `less_or_equal`. I don't see in the MSL doc where it says what `greater` or...
Keeping the names is as `greater`, `lesser` is fine. We do need to check with @mwyrzykowski if the metal behaviour is actually `or equal` or not. If it isn't, do...
As an alternative to adding another attribute, could we add this to the `@builtin`? So you could do `@builtin(frag_depth)`, `@builtin(frag_depth, greater)`, `@builtin(frag_depth, lesser)` or `@builtin(frag_depth, any)`? Means we have to...
Any value after the builtin name would be optional and defaulted. So, you could set any of those in any order, or none. `@builtin(frag_depth, greater, hypothetic_value, yet_another_hypothetic_value)`, or `@builtin(frag_depth, yet_another_hypothetic_value,...