Loading
swiftPackages.swift: prefix unguarded-availability flag with -Xcc
The Swift wrapper uses a hook directly from cc-wrapper to set the `-target` flag appropriately. This works because Clang and Swift use the same syntax for `-target`, but there was never a guarantee that this compatibility would be true for every option set in the hook. Indeed, commit 369cc5c6 (PR #445119) made availability warnings into errors by setting the `-Werror=unguarded-availability` flag in this hook, which Swift doesn't accept at the top level. This caused all invocations of Swift to fail with the error `unknown argument: '-Werror=unguarded-availability'` - including the bootstrap Swift, which meant that `swiftPackages.swift` would fail. This commit adds all `-Werror` flags to the list of flags that need to be prefixed with `-Xcc`. I could have just dropped the flag, since Swift already makes this an error, but you can have C/C++ targets in Swift packages and we'd want to pass this flag on to them. (I'm not sure whether the clang used for those targets is already wrapped, but if it is there is no harm done.)