Support in/out for stage inputs/outputs, tied to being desktop version 150 or ES 300.

git-svn-id: https://cvs.khronos.org/svn/repos/ogl/trunk/ecosystem/public/sdk/tools/glslang@20077 e7fa87d3-cd2b-0410-9028-fcbf551c1848
This commit is contained in:
John Kessenich 2013-01-10 01:47:54 +00:00
parent 1b12b9c575
commit f59bfa07e0
7 changed files with 26 additions and 9 deletions

View file

@ -623,14 +623,19 @@ bool TParseContext::globalQualifierFixAndErrorCheck(int line, TQualifier& qualif
{
switch (qualifier) {
case EvqIn:
profileRequires(line, ENoProfile, 130, 0, "in for stage inputs");
profileRequires(line, EEsProfile, 300, 0, "in for stage inputs");
qualifier = EvqVaryingIn;
return false;
break;
case EvqOut:
profileRequires(line, ENoProfile, 130, 0, "out for stage outputs");
profileRequires(line, EEsProfile, 300, 0, "out for stage outputs");
qualifier = EvqVaryingOut;
return false;
break;
case EvqInOut:
qualifier = EvqVaryingIn;
error(line, "cannot use both 'in' and 'out' at global scope", "", "");
error(line, "cannot use 'inout' at global scope", "", "");
return true;
}