diff options
Diffstat (limited to 'dom/canvas/test/webgl-conf/checkout/conformance/ogles/GL/functions/bool_empty_inout_bool_empty_frag.frag')
-rw-r--r-- | dom/canvas/test/webgl-conf/checkout/conformance/ogles/GL/functions/bool_empty_inout_bool_empty_frag.frag | 48 |
1 files changed, 48 insertions, 0 deletions
diff --git a/dom/canvas/test/webgl-conf/checkout/conformance/ogles/GL/functions/bool_empty_inout_bool_empty_frag.frag b/dom/canvas/test/webgl-conf/checkout/conformance/ogles/GL/functions/bool_empty_inout_bool_empty_frag.frag new file mode 100644 index 0000000000..cb20cb4604 --- /dev/null +++ b/dom/canvas/test/webgl-conf/checkout/conformance/ogles/GL/functions/bool_empty_inout_bool_empty_frag.frag @@ -0,0 +1,48 @@ + +/* +Copyright (c) 2019 The Khronos Group Inc. +Use of this source code is governed by an MIT-style license that can be +found in the LICENSE.txt file. +*/ + + +#ifdef GL_ES +precision mediump float; +#endif +varying vec4 color; + +// Function declaration. +bool function(inout bool par); + +void main (void) +{ + bool par = true; + bool ret = false; + + float gray = 0.0; + + ret = function(par); + + // The parameter should be changed by the function and the function should return true. + if(!par && ret) + { + gray = 1.0; + } + + gl_FragColor = vec4(gray, gray, gray, 1.0); +} + +// Function definition. +bool function(inout bool par) +{ + // Return the value of the parameter. + if(par) + { + // Test parameter qualifier (default is "in"). + par = false; + + return true; + } + else + return false; +} |