The diff looks generally reasonable to me. You will probably have to update a bunch of debug info testcases along with this change.
You can run the LLDB test suite with by running
$ build-script -r -l -t -- --skip-test-cmark --skip-test-swift --lldb-test-with-curses --lldb-use-system-debugserver
Since I missed the original discussion, I’m curious about the context though: under what circumstances is an inout argument be passed by value and can it ever be a let binding?
On Jun 9, 2016, at 9:55 AM, Joe Groff <firstname.lastname@example.org> wrote:
On Jun 8, 2016, at 7:38 PM, Daniel Duan via swift-dev <email@example.com> wrote:
I'm resuming work on removing the SILGen for the inout shadow copy. Making
this change involes quite a bit of tests updates. I'd love some one to review
this commit in SILGenProlog.cpp before I dive back into the deep end:
(It's +5, -12, a small patch).
Is this on the right track?
The variable binding looks great. We might need to coordinate with the debugger to ensure we still emit debug info the way lldb expects it; cc'ing Adrian and Enrico.