[PATCH] D69636: Make flang driver stuff wrok on macOS

Nico Weber via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Oct 30 12:57:03 PDT 2019


thakis created this revision.
thakis added a reviewer: peterwaller-arm.

6bf55804 <https://reviews.llvm.org/rG6bf55804924d5a1d902925ad080b1a2b57c5c75c> added special-case code for TY_PP_Fortran to
ToolChain::LookupTypeForExtension(), but
Darwin::LookupTypeForExtension() overrode that method without calling
the superclass implementation.

Make it call the superclass implementation to fix things.


https://reviews.llvm.org/D69636

Files:
  clang/lib/Driver/ToolChains/Darwin.cpp
  clang/test/Driver/flang/flang.f90


Index: clang/test/Driver/flang/flang.f90
===================================================================
--- clang/test/Driver/flang/flang.f90
+++ clang/test/Driver/flang/flang.f90
@@ -1,7 +1,3 @@
-! D63607 made mac builders unhappy by failing this test, and it isn't
-! yet obvious why. Mark as unsupported as a temporary measure.
-! UNSUPPORTED: darwin
-
 ! Check that flang -fc1 is invoked when in --driver-mode=flang.
 
 ! This is a copy of flang_ucase.F90 because the driver has logic in it which
Index: clang/lib/Driver/ToolChains/Darwin.cpp
===================================================================
--- clang/lib/Driver/ToolChains/Darwin.cpp
+++ clang/lib/Driver/ToolChains/Darwin.cpp
@@ -737,7 +737,7 @@
       CudaInstallation(D, Triple, Args) {}
 
 types::ID MachO::LookupTypeForExtension(StringRef Ext) const {
-  types::ID Ty = types::lookupTypeForExtension(Ext);
+  types::ID Ty = ToolChain::lookupTypeForExtension(Ext);
 
   // Darwin always preprocesses assembly files (unless -x is used explicitly).
   if (Ty == types::TY_PP_Asm)


-------------- next part --------------
A non-text attachment was scrubbed...
Name: D69636.227164.patch
Type: text/x-patch
Size: 1061 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20191030/908c67a2/attachment.bin>


More information about the llvm-commits mailing list