diff options
Diffstat (limited to 'tools/gccld')
-rw-r--r-- | tools/gccld/GenerateCode.cpp | 14 | ||||
-rw-r--r-- | tools/gccld/gccld.cpp | 8 |
2 files changed, 9 insertions, 13 deletions
diff --git a/tools/gccld/GenerateCode.cpp b/tools/gccld/GenerateCode.cpp index 020d883..f6a08ce 100644 --- a/tools/gccld/GenerateCode.cpp +++ b/tools/gccld/GenerateCode.cpp @@ -152,15 +152,11 @@ static bool isBytecodeLibrary(const sys::Path &FullPath) { static bool isBytecodeLPath(const std::string &LibPath) { bool isBytecodeLPath = false; - // Make sure the -L path has a '/' character - // because llvm-g++ passes them without the ending - // '/' char and sys::Path doesn't think it is a - // directory (see: sys::Path::isDirectory) without it - std::string dir = LibPath; - if ( dir[dir.length()-1] != '/' ) - dir.append("/"); - - sys::Path LPath(dir); + sys::Path LPath(LibPath); + + // Make sure its a directory + if (!LPath.isDirectory()) + return isBytecodeLPath; // Grab the contents of the -L path std::set<sys::Path> Files; diff --git a/tools/gccld/gccld.cpp b/tools/gccld/gccld.cpp index 6d49466..7a4dec3 100644 --- a/tools/gccld/gccld.cpp +++ b/tools/gccld/gccld.cpp @@ -313,9 +313,9 @@ int main(int argc, char **argv, char **envp ) { if (!SaveTemps) { // Remove the assembly language file. - AssemblyFile.destroyFile(); + AssemblyFile.destroy(); // Remove the bytecode language file. - sys::Path(RealBytecodeOutput).destroyFile(); + sys::Path(RealBytecodeOutput).destroy(); } } else if (NativeCBE) { @@ -345,9 +345,9 @@ int main(int argc, char **argv, char **envp ) { if (!SaveTemps) { // Remove the assembly language file. - CFile.destroyFile(); + CFile.destroy(); // Remove the bytecode language file. - sys::Path(RealBytecodeOutput).destroyFile(); + sys::Path(RealBytecodeOutput).destroy(); } } else if (!LinkAsLibrary) { |