390edeb88d
The fuzzer triggered this error in a strange way that involves parsing a TK_INVALID token. The fuzzer's original input used \xFF bytes in the shader text to do this. I replaced these with the ` character since it behaved the same, but allows our test inputs to remain basic ASCII. The root problem is that `cast_expression`, part of no-op arithmetic simplification, can now fail because expressions like `int(4000000000)` no longer get past Constructor::Convert. Previously we had assumed `cast_expression` could never return null; now we check its result for null before using it. Change-Id: I7335395bab0daf1f788b0c7c154904b2372ae13f Bug: oss-fuzz:40660 Reviewed-on: https://skia-review.googlesource.com/c/skia/+/467316 Commit-Queue: John Stiles <johnstiles@google.com> Commit-Queue: Brian Osman <brianosman@google.com> Auto-Submit: John Stiles <johnstiles@google.com> Reviewed-by: Brian Osman <brianosman@google.com>
2 lines
43 B
Plaintext
2 lines
43 B
Plaintext
half i() { f[0 * (4, int4(3 `` -3689348940
|