The client won't be expecting a struct return, and will have generated code to 
take a void return.  If SBError happens to be returned in registers, nothing 
bad will happen, but if it's returned on the stack, that would corrupt the 
caller's stack.  Relying on the particular kind of struct return to keep out of 
trouble seems like a bad practice to me.

Jim


> On Jun 20, 2018, at 11:49 AM, Alexander Polyakov via Phabricator 
> <revi...@reviews.llvm.org> wrote:
> 
> apolyakov added a comment.
> 
> If some client uses `StepOver` like `sbThread.StepOver()`, then making 
> `StepOver` return SBError won't break anything since in this case returned 
> SBError value will just be ignored. Am I missing something?
> 
> 
> https://reviews.llvm.org/D47991
> 
> 
> 

_______________________________________________
lldb-commits mailing list
lldb-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

Reply via email to