Vulkan: Clean up Error usage.

* Adds a nodiscard to the Error class.
* Fixes the places where Error was discard.
* Uses more vk::Error instead of gl::Error.

This enables the Vulkan back-end Error refactoring.

Bug: angleproject:2713
Change-Id: I09606d965e8b7cfd341ad7fb95cf029b9d694ef4
Reviewed-on: https://chromium-review.googlesource.com/1128922
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Frank Henigman <fjhenigman@chromium.org>
diff --git a/src/libANGLE/renderer/vulkan/CommandGraph.cpp b/src/libANGLE/renderer/vulkan/CommandGraph.cpp
index 939f163..1a991ad 100644
--- a/src/libANGLE/renderer/vulkan/CommandGraph.cpp
+++ b/src/libANGLE/renderer/vulkan/CommandGraph.cpp
@@ -459,7 +459,7 @@
 {
     if (mOutsideRenderPassCommands.valid())
     {
-        mOutsideRenderPassCommands.end();
+        ANGLE_TRY(mOutsideRenderPassCommands.end());
         primaryCommandBuffer->executeCommands(1, &mOutsideRenderPassCommands);
     }
 
@@ -471,7 +471,7 @@
         ANGLE_TRY(
             renderPassCache->getCompatibleRenderPass(device, serial, mRenderPassDesc, &renderPass));
 
-        mInsideRenderPassCommands.end();
+        ANGLE_TRY(mInsideRenderPassCommands.end());
 
         VkRenderPassBeginInfo beginInfo;
         beginInfo.sType                    = VK_STRUCTURE_TYPE_RENDER_PASS_BEGIN_INFO;