[PATCH] D67407: All Errors must be checked

Chris Bieneman via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Sep 10 10:25:19 PDT 2019


beanz created this revision.
beanz added a reviewer: lhames.
Herald added a project: LLVM.

If an error is ever returned from any of the functions called here, the error must be joined with the Result Error before being returned otherwise the Result Error will assert on destruction.


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D67407

Files:
  llvm/include/llvm/ExecutionEngine/Orc/RPCUtils.h


Index: llvm/include/llvm/ExecutionEngine/Orc/RPCUtils.h
===================================================================
--- llvm/include/llvm/ExecutionEngine/Orc/RPCUtils.h
+++ llvm/include/llvm/ExecutionEngine/Orc/RPCUtils.h
@@ -751,9 +751,9 @@
     Error Result = Error::success();
     if (auto Err =
             SerializationTraits<ChannelT, Error, Error>::deserialize(C, Result))
-      return Err;
+      return joinErrors(std::move(Result), std::move(Err));
     if (auto Err = C.endReceiveMessage())
-      return Err;
+      return joinErrors(std::move(Result), std::move(Err));
     return Handler(std::move(Result));
   }
 


-------------- next part --------------
A non-text attachment was scrubbed...
Name: D67407.219565.patch
Type: text/x-patch
Size: 640 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20190910/e1688b21/attachment.bin>


More information about the llvm-commits mailing list