Don't validate attribute types match for gl_VertexID and gl_InstanceID.

TEST=conformance2/glsl3/no-attribute-vertex-shader
TEST=deqp/functional/gles3/instancedrendering

BUG=angleproject:2012

Change-Id: I234410fabf6a8fcd87040c8085ca5dce82fa8932
Reviewed-on: https://chromium-review.googlesource.com/559851
Commit-Queue: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
diff --git a/src/libANGLE/validationES.cpp b/src/libANGLE/validationES.cpp
index 8c95b21..3d4fa1f 100644
--- a/src/libANGLE/validationES.cpp
+++ b/src/libANGLE/validationES.cpp
@@ -755,6 +755,12 @@
 
     for (const auto &shaderAttribute : program->getAttributes())
     {
+        // gl_VertexID and gl_InstanceID are active attributes but don't have a bound attribute.
+        if (shaderAttribute.isBuiltIn())
+        {
+            continue;
+        }
+
         GLenum shaderInputType = VariableComponentType(shaderAttribute.type);
 
         const auto &attrib = vao->getVertexAttribute(shaderAttribute.location);