Tessellation: Smaller changes: Take tessellation control output arrayness into account in location overlap testing, better error message for redeclaring a built-in with size to be unsized.

git-svn-id: https://cvs.khronos.org/svn/repos/ogl/trunk/ecosystem/public/sdk/tools/glslang@24522 e7fa87d3-cd2b-0410-9028-fcbf551c1848
This commit is contained in:
John Kessenich 2013-12-13 19:26:54 +00:00
parent f3e2a89452
commit 27151efa71
6 changed files with 31 additions and 10 deletions

View file

@ -500,8 +500,9 @@ int TIntermediate::addUsedLocation(const TQualifier& qualifier, const TType& typ
else
size = 1;
} else {
if (language == EShLangGeometry && qualifier.isPipeInput()) {
assert(type.isArray());
if (type.isArray() &&
(language == EShLangGeometry && qualifier.isPipeInput() ||
(language == EShLangTessControl && qualifier.isPipeOutput() && ! qualifier.patch))) {
TType elementType(type, 0);
size = computeTypeLocationSize(elementType);
} else