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.