Bug 32910

Summary: Keywords 'in' and 'out' not handled properly for GLSL 1.20 shaders
Product: Mesa Reporter: Ian Romanick <idr>
Component: glsl-compilerAssignee: Ian Romanick <idr>
Status: RESOLVED FIXED QA Contact:
Severity: normal    
Priority: medium    
Version: 7.10   
Hardware: All   
OS: All   
Whiteboard:
i915 platform: i915 features:

Description Ian Romanick 2011-01-07 16:37:54 UTC
In GLSL 1.20 mode, the keywords 'in' and 'out' are (incorrectly) accepted on global variables.  This was discovered by code inspection and verified with piglit tests spec/glsl-1.20/compiler/qualifiers/in-01.vert and spec/glsl-1.20/compiler/qualifiers/out-01.vert.
Comment 1 Ian Romanick 2011-01-10 17:50:14 UTC
Fixed in master by the following patch series.  I'm leaving the bug open, but I'm reassigning it to version 7.10.

commit 469ea695bbbc984ebec26b2413ab70d450a283ca
Author: Ian Romanick <ian.d.romanick@intel.com>
Date:   Fri Jan 7 16:05:59 2011 -0800

    glsl: Disallow 'in' and 'out' on globals in GLSL 1.20
    
    Fixes piglit tests glsl-1.20/compiler/qualifiers/in-01.vert and
    glsl-1.20/compiler/qualifiers/out-01.vert and bugzilla #32910.
    
    NOTE: This is a candidate for the 7.9 and 7.10 branches.  This patch
    also depends on the previous two commits.

commit a0c2ec8e2dcf90709dd2e147b06a0a173611b0a1
Author: Ian Romanick <ian.d.romanick@intel.com>
Date:   Fri Jan 7 16:04:30 2011 -0800

    glsl: Refresh autogenerated parser file.
    
    For the previous commit.

commit eebdfdfbcf2721349d2c2cafe2d81fd83cade9b9
Author: Ian Romanick <ian.d.romanick@intel.com>
Date:   Fri Jan 7 16:03:48 2011 -0800

    glsl: Add version_string containing properly formatted GLSL version
Comment 2 Ian Romanick 2011-01-25 17:39:04 UTC
In 7.9, fixed by:

df033be3f7d7ac314ad60958d10c4b4cf28be7f7
28d47fed617e2e9b9d1b488e22eb2b2ce0cda0f5
1785904c5c56d4962a91c3da6c291f418aa45d3c

In 7.10 fixed by:

27ef4652762a68565162075499b9a8e7467322af
4ee68e2d4736aa6768794421c81ed5b93ff995f1
d81615ee1993ad7da644feab18a53f048bac8b30

Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.