Allow single-component constructors

This causes the following tests to pass:

    glslparsertest/shaders/CorrectVersion.V110.frag
    shaders/glsl-vs-sqrt-zero.frag
    shaders/glsl-vs-sqrt-zero.vert

This causes the following tests to fail.  These shaders were
previously failing to compile, but they were all failing for the wrong
reasons.

    glslparsertest/shaders/attribute1.vert
    glslparsertest/shaders/attribute2.vert
    glslparsertest/shaders/main2.vert
This commit is contained in:
Ian Romanick 2010-03-29 15:36:02 -07:00
parent 32a494586f
commit 8a24cd5cea
1 changed files with 1 additions and 1 deletions

View File

@ -327,7 +327,7 @@ ast_function_expression::hir(exec_list *instructions,
* arguments to provide an initializer for every component in the
* constructed value."
*/
if (components_used < type_components) {
if ((components_used < type_components) && (components_used != 1)) {
_mesa_glsl_error(& loc, state, "too few components to construct "
"`%s'",
constructor_type->name);