mirror of
https://github.com/flutter/flutter.git
synced 2026-02-20 02:29:02 +08:00
See b/335381180 In an upcoming version of SPIRV tools, these constants are being flagged as invalid. Due to some combination of the macros + inlining we're ending up with multiple precision modifiers on the constants: ``` third_party/flutter_engine/impeller/entity/shaders/radial_gradient_fill.frag: GLSL to SPIRV failed; Compilation error. 0 error(s) and 1 warning(s). third_party/flutter_engine/impeller/entity/shaders/radial_gradient_fill.frag:14: warning: '' : all default precisions are highp; use precision statements to quiet warning, e.g.: third_party/flutter_engine/impeller/entity/shaders/radial_gradient_fill.frag: "precision mediump int; precision highp float;" shaderc: internal error: compilation succeeded but failed to optimize: ID '112' decorated with RelaxedPrecision multiple times is not allowed. %float_n0_474999994 = OpConstant %float -0.474999994 ``` We don't really benefit from half precision on these, since we're either using them for equality or can cheaply convert to half precision anyway.