Results for spec/ARB_explicit_attrib_location/1.20/compiler/layout-10.frag

Overview

Status: fail
Result: fail

Back to summary

Details

Detail Value
returncode 1
time 0.238629102707
note
Returncode was 1
command
/home/mks-hackers/piglit/framework/../bin/glslparsertest tests/spec/arb_explicit_attrib_location/1.20/compiler/layout-10.frag pass 1.20 GL_ARB_explicit_attrib_location
errors
  • Failed to compile fragment shader tests/spec/arb_explicit_attrib_location/1.20/compiler/layout-10.frag: 0(29) : error C0000: syntax error, unexpected '(', expecting "::" at token "("
info
Returncode: 1

Errors:
Failed to compile fragment shader tests/spec/arb_explicit_attrib_location/1.20/compiler/layout-10.frag: 0(29) : error C0000: syntax error, unexpected '(', expecting "::" at token "("



Output:
Shader source:
// [config]
// expect_result: pass
// glsl_version: 1.20
// require_extensions: GL_ARB_explicit_attrib_location
// [end config]
//
// Even though the specified locations overlap, the spec says that a *link*
// error is generated.  The changes to section 3.9.2 say:
//
//     "Output binding assignments will cause LinkProgram to fail:
//
//           * if the number of active outputs is greater than the value of
//             MAX_DRAW_BUFFERS;
//
//           * if the program has an active output assigned to a location
//             greater than or equal to the value of
//             MAX_DUAL_SOURCE_DRAW_BUFFERS and has an active output assigned
//             an index greater than or equal to one;
//
//           * if more than one varying out variable is bound to the same
//             number and index; or
//
//           * if the explicit binding assigments do not leave enough space
//             for the linker to automatically assign a location for a varying
//             out array, which requires multiple contiguous locations."

#version 120
#extension GL_ARB_explicit_attrib_location: require
layout(location = 0) out vec4 color;
layout(location = 0) out vec4 factor;

void main()
{
	color = vec4(1.0);
	factor = vec4(0.5);
}

Back to summary