With the release of Xcode 13.3 debugging tests in the Visual Studio Code swift extension has broken. Unfortunately VSCode is still reliant on Xcode to provide a version of xctest on macOS. Debugging tests involves sending xctest to lldb. Prior to the release of 13.3 this worked fine. Now I get the error
error: more than one platform supports this executable (host, remote-macosx),
specify an architecture to disambiguate
I know on the command line I can get around this by adding --arch parameter setting the architecture. I don't have control over the starting of lldb that is done by another extension CodeLLDB. Is there other way to specify the architecture eg via environment variable?
I've narrowed this down to a change in lldb between Swift 5.5 and 5.6. In Swift 5.5 if I supplied a universal binary that contained both arm64e and x86_64 executables lldb would automatically choose the correct executables to run based on the system it is running on. In Swift 5.6 this is no longer the case and you are required to specify the architecture. What was the reason for this change?