Index: clang/lib/Driver/ToolChains/Hurd.h =================================================================== --- clang/lib/Driver/ToolChains/Hurd.h +++ clang/lib/Driver/ToolChains/Hurd.h @@ -10,13 +10,14 @@ #define LLVM_CLANG_LIB_DRIVER_TOOLCHAINS_Hurd_H #include "Gnu.h" +#include "Linux.h" #include "clang/Driver/ToolChain.h" namespace clang { namespace driver { namespace toolchains { -class LLVM_LIBRARY_VISIBILITY Hurd : public Generic_ELF { +class LLVM_LIBRARY_VISIBILITY Hurd : public Linux { public: Hurd(const Driver &D, const llvm::Triple &Triple, const llvm::opt::ArgList &Args); @@ -27,9 +28,9 @@ AddClangSystemIncludeArgs(const llvm::opt::ArgList &DriverArgs, llvm::opt::ArgStringList &CC1Args) const override; - virtual std::string computeSysRoot() const; + std::string computeSysRoot() const override; - virtual std::string getDynamicLinker(const llvm::opt::ArgList &Args) const; + std::string getDynamicLinker(const llvm::opt::ArgList &Args) const override; std::vector ExtraOpts; Index: clang/lib/Driver/ToolChains/Hurd.cpp =================================================================== --- clang/lib/Driver/ToolChains/Hurd.cpp +++ clang/lib/Driver/ToolChains/Hurd.cpp @@ -61,9 +61,8 @@ return Triple.isArch32Bit() ? "lib" : "lib64"; } -Hurd::Hurd(const Driver &D, const llvm::Triple &Triple, - const ArgList &Args) - : Generic_ELF(D, Triple, Args) { +Hurd::Hurd(const Driver &D, const llvm::Triple &Triple, const ArgList &Args) + : Linux(D, Triple, Args) { std::string SysRoot = computeSysRoot(); path_list &Paths = getFilePaths();