diff options
author | Ian Romanick <[email protected]> | 2009-07-27 14:11:38 -0700 |
---|---|---|
committer | Ian Romanick <[email protected]> | 2009-07-27 14:18:40 -0700 |
commit | 054ab5a50a324b1d64fe403a65a2a392ba0c09fd (patch) | |
tree | 050d6572ee43f994d275078b74d9f2078719c703 /src/mesa/shader/program_parse.y | |
parent | be32fb779beecf4bbd61c42c7eb0f8ca988a9831 (diff) |
ARB prog parser: Correct handling of some extensions that interact w/ARB_vp
Diffstat (limited to 'src/mesa/shader/program_parse.y')
-rw-r--r-- | src/mesa/shader/program_parse.y | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/src/mesa/shader/program_parse.y b/src/mesa/shader/program_parse.y index 92e035997a3..852c26b31f4 100644 --- a/src/mesa/shader/program_parse.y +++ b/src/mesa/shader/program_parse.y @@ -815,10 +815,20 @@ vtxAttribItem: POSITION } | COLOR optColorType { + if (!state->ctx->Extensions.EXT_secondary_color) { + yyerror(& @2, state, "GL_EXT_secondary_color not supported"); + YYERROR; + } + $$ = VERT_ATTRIB_COLOR0 + $2; } | FOGCOORD { + if (!state->ctx->Extensions.EXT_fog_coord) { + yyerror(& @1, state, "GL_EXT_fog_coord not supported"); + YYERROR; + } + $$ = VERT_ATTRIB_FOG; } | TEXCOORD optTexCoordUnitNum @@ -827,6 +837,7 @@ vtxAttribItem: POSITION } | MATRIXINDEX '[' vtxWeightNum ']' { + yyerror(& @1, state, "GL_ARB_matrix_palette not supported"); YYERROR; } | VTXATTRIB '[' vtxAttribNum ']' @@ -1060,6 +1071,11 @@ stateLightProperty: ambDiffSpecProperty } | ATTENUATION { + if (!state->ctx->Extensions.EXT_point_parameters) { + yyerror(& @1, state, "GL_ARB_point_parameters not supported"); + YYERROR; + } + $$ = STATE_ATTENUATION; } | SPOT stateSpotProperty @@ -1346,6 +1362,7 @@ stateMatrixName: MODELVIEW stateOptModMatNum } | PALETTE '[' statePaletteMatNum ']' { + yyerror(& @1, state, "GL_ARB_matrix_palette not supported"); YYERROR; } | MAT_PROGRAM '[' stateProgramMatNum ']' |