[driver][darwin] Don't use -platform_version flag by default (PR44813)
authorHans Wennborg <hans@chromium.org>
Thu, 27 Feb 2020 12:48:26 +0000 (13:48 +0100)
committerHans Wennborg <hans@chromium.org>
Thu, 27 Feb 2020 12:48:26 +0000 (13:48 +0100)
commit5122e828701c88f8d53ee881bc68f3904454d154
treecb04f72e61b866844290f959ce50435b546e3797
parent45abcd1df1ae6c42f7b65afe4344d2c435141ccc
[driver][darwin] Don't use -platform_version flag by default (PR44813)

The code in llvmorg-10-init-12188-g25ce33a6e4f is a breaking change for
users of older linkers who don't pass a version parameter, which
prevents a drop-in clang upgrade. Old tools can't know about what future
tools will do, so as a general principle the burden should be new tools
to be compatible by default. Also, for comparison, none of the other
tests of Version within AddLinkArgs add any new behaviors unless the
version is explicitly specified. Therefore, this patch changes the
-platform_version behavior from opt-out to opt-in.

Patch by David Major!

Differential revision: https://reviews.llvm.org/D74784
clang/lib/Driver/ToolChains/Darwin.cpp
clang/test/Driver/darwin-ld-platform-version-ios.c
clang/test/Driver/darwin-ld-platform-version-macos.c
clang/test/Driver/darwin-ld-platform-version-tvos.c
clang/test/Driver/darwin-ld-platform-version-watchos.c