JDevlieghere accepted this revision.
JDevlieghere added a comment.
This revision is now accepted and ready to land.

LGTM



================
Comment at: lldb/source/Target/Target.cpp:2408-2446
 llvm::Expected<lldb_private::Address> Target::GetEntryPointAddress() {
   Module *exe_module = GetExecutableModulePointer();
   llvm::Error error = llvm::Error::success();
   assert(!error); // Check the success value when assertions are enabled.
 
   if (!exe_module || !exe_module->GetObjectFile()) {
     error = llvm::make_error<llvm::StringError>("No primary executable found",
----------------
dim wrote:
> JDevlieghere wrote:
> > I'm not particularly happy with the error handling in this function. The 
> > patch seems correct, but as I've demonstrated it's easy to get this wrong. 
> > I think we can rewrite the method as suggested to eliminate the issue. What 
> > do you think?
> Yeah, I think that is much less error-prone. The `consumeError` method has a 
> relevent comment:
> 
> ```
> /// Uses of this method are potentially indicative of problems: perhaps the
> /// error should be propagated further, or the error-producer should just
> /// return an Optional in the first place.
> ```
> 
> In this case it was just problematic to instantiate an `Error` right at the 
> start, instead of when an actual error condition occurred.
> 
> So I agree that your proposed approach is better. There is still one 
> `consumeError()` in there, though?
> There is still one consumeError() in there, though?

I don't think that's true anymore? 


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D86355/new/

https://reviews.llvm.org/D86355

_______________________________________________
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
  • [Lldb-commits] [PATCH] ... Jonas Devlieghere via Phabricator via lldb-commits

Reply via email to