Generate OUT_OF_MEMORY when compiler initialization fails.

INVALID_OPERATION implies that the error is recoverable.

Change-Id: Iaa13293168f66f46864e5e4c0ab7d7c53c97e8fd
Reviewed-on: https://chromium-review.googlesource.com/383131
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
diff --git a/src/libANGLE/renderer/d3d/ProgramD3D.cpp b/src/libANGLE/renderer/d3d/ProgramD3D.cpp
index 3ac82d9..5c94994 100644
--- a/src/libANGLE/renderer/d3d/ProgramD3D.cpp
+++ b/src/libANGLE/renderer/d3d/ProgramD3D.cpp
@@ -1433,7 +1433,12 @@
     gatherTransformFeedbackVaryings(varyingPacking);
 
     LinkResult result = compileProgramExecutables(data, infoLog);
-    if (result.error.isError() || !result.linkSuccess)
+    if (result.error.isError())
+    {
+        infoLog << result.error.getMessage();
+        return result;
+    }
+    else if (!result.linkSuccess)
     {
         infoLog << "Failed to create D3D shaders.";
         return result;