Stop treating 'effective' values for DSA functions as passed arguments for the purposes of error code generation ( opengl/API#22 ).
diff --git a/extensions/ARB/ARB_direct_state_access.txt b/extensions/ARB/ARB_direct_state_access.txt index 914e348..f58f30b 100644 --- a/extensions/ARB/ARB_direct_state_access.txt +++ b/extensions/ARB/ARB_direct_state_access.txt
@@ -46,8 +46,8 @@ Version - Last Modified Date: June 14, 2018 - Author Revision: 50 + Last Modified Date: September 17, 2019 + Author Revision: 51 Number @@ -1246,12 +1246,14 @@ Errors - Modify existing errors to apply to all forms of the commands by using - "effective <target>" instead of "<target>". + Modify existing errors to apply to all forms of the command where + parameters are equivalent. An INVALID_OPERATION error is generated by TextureBufferRange if <texture> is not the name of an existing texture object. + An INVALID_OPERATION error is generated by TextureBufferRange if the + effective <target> is not TEXTURE_BUFFER. (Replace the introduction of TexBuffer with the following, p. 214) @@ -1297,12 +1299,20 @@ Errors - Modify existing errors to apply to all forms of the commands by using - "effective <target>" instead of "<target>". + Modify existing errors to apply to all forms of the command where + parameters are equivalent. An INVALID_OPERATION error is generated by TextureParameter* if <texture> is not the name of an existing texture object. + An INVALID_OPERATION error is generated by TextureParameter* if + the effective <target> is not one of the valid targets listed above. + + An INVALID_OPERATION error is generated by TextureParameter* if the + effective <target> is either TEXTURE_2D_MULTISAMPLE or + TEXTURE_2D_MULTISAMPLE_ARRAY , and pname is any sampler state from table + 23.23. + Modifications to Section 8.11.2, "Texture Parameter Queries", p. 220 @@ -1349,12 +1359,15 @@ Errors - Modify existing errors to apply to all forms of the commands by using - "effective <target>" instead of "<target>". + Modify existing errors to apply to all forms of the command where + parameters are equivalent. An INVALID_OPERATION error is generated by GetTextureParameter* if <texture> is not the name of an existing texture object. + An INVALID_OPERATION error is generated by GetTextureParameter* if the + effective <target> is not one of the texture targets described above. + Modifications to Section 8.11.3, "Texture Level Parameter Queries", p. 220 @@ -1395,12 +1408,16 @@ Errors - Modify existing errors to apply to all forms of the commands by using - "effective texture target" instead of "<target>". + Modify existing errors to apply to all forms of the command where + parameters are equivalent. An INVALID_OPERATION error is generated by GetTextureLevelParameter* if <texture> is not the name of an existing texture object. + An INVALID_OPERATION error is generated by GetTextureLevelParameter* if + the effective <target> is not one of the targets described above as + valid for the corresponding command. + Modifications to Section 8.11.4, "Texture Image Queries" @@ -1455,11 +1472,15 @@ An INVALID_OPERATION error is generated by GetTextureImage if <texture> is not the name of an existing texture object. - An INVALID_ENUM error is generated if the effective <target> is not one + An INVALID_ENUM error is generated by GetTexImage if <target> is not one of TEXTURE_1D, TEXTURE_2D, TEXTURE_3D, TEXTURE_1D_ARRAY, - TEXTURE_2D_ARRAY, TEXTURE_CUBE_MAP_ARRAY, TEXTURE_RECTANGLE, one of the - targets from table 8.18 (for GetTexImage and GetnTexImage only), or - TEXTURE_CUBE_MAP (for GetTextureImage only). + TEXTURE_2D_ARRAY, TEXTURE_CUBE_MAP_ARRAY, TEXTURE_RECTANGLE, or one of + the targets from table 8.18. + + An INVALID_OPERATION error is generated by GetTextureImage if <target> + is not one of TEXTURE_1D, TEXTURE_2D, TEXTURE_3D, TEXTURE_1D_ARRAY, + TEXTURE_2D_ARRAY, TEXTURE_CUBE_MAP_ARRAY, TEXTURE_RECTANGLE, or + TEXTURE_CUBE_MAP. An INVALID_OPERATION error is generated by GetTextureImage if the buffer size required to store the requested data is greater than <bufSize> @@ -4156,6 +4177,12 @@ Rev. Date Author Changes ---- ----------- --------- --------------------------------------------- + 51 17 Sep 2019 Jon Leech Modify DSA commands to generate + INVALID_OPERATION errors instead of + INVALID_ENUM for "effective texture + <target>" mismatches, following the GL 4.6 + specification (gitlab #22). + 50 14 Jun 2018 T. Karras Use English variable names and fix API usage in examples.