From a30d6cdc3a32af8bd06d5a1a218a32840cd70a00 Mon Sep 17 00:00:00 2001 From: Daniel Dunbar Date: Fri, 19 Nov 2010 17:51:40 +0000 Subject: [PATCH] Driver/Darwin: Don't pass -demangle to an iOS linker, which may not understand it. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@119809 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/Driver/Tools.cpp | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/lib/Driver/Tools.cpp b/lib/Driver/Tools.cpp index 338c541825..20977f239b 100644 --- a/lib/Driver/Tools.cpp +++ b/lib/Driver/Tools.cpp @@ -2441,7 +2441,13 @@ void darwin::Link::AddLinkArgs(Compilation &C, // Newer linkers support -demangle, pass it if supported and not disabled by // the user. - if (Version[0] >= 100 && !Args.hasArg(options::OPT_Z_Xlinker__no_demangle)) { + // + // FIXME: We temporarily avoid passing -demangle to any iOS linker, because + // unfortunately we can't be guaranteed that the linker version used there + // will match the linker version detected at configure time. We need the + // universal driver. + if (Version[0] >= 100 && !Args.hasArg(options::OPT_Z_Xlinker__no_demangle) && + !getDarwinToolChain().isTargetIPhoneOS()) { // Don't pass -demangle to ld_classic. // // FIXME: This is a temporary workaround, ld should be handling this. -- 2.50.1