From bd58d4eb975c7fbdfca29ac094827b058971f6bc Mon Sep 17 00:00:00 2001 From: Rafael Espindola Date: Wed, 22 Jul 2015 18:29:39 +0000 Subject: [PATCH] Identify thin archives as archives. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@242921 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/Support/Path.cpp | 3 ++- test/Object/nm-archive.test | 9 +++++++++ 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/lib/Support/Path.cpp b/lib/Support/Path.cpp index 75fd292e5b1..985cdbf7432 100644 --- a/lib/Support/Path.cpp +++ b/lib/Support/Path.cpp @@ -939,7 +939,8 @@ file_magic identify_magic(StringRef Magic) { break; case '!': if (Magic.size() >= 8) - if (memcmp(Magic.data(),"!\n",8) == 0) + if (memcmp(Magic.data(), "!\n", 8) == 0 || + memcmp(Magic.data(), "!\n", 8) == 0) return file_magic::archive; break; diff --git a/test/Object/nm-archive.test b/test/Object/nm-archive.test index 4cd58d33cf2..8f8cdbe9f08 100644 --- a/test/Object/nm-archive.test +++ b/test/Object/nm-archive.test @@ -58,3 +58,12 @@ GNU AR is able to parse the unaligned member and warns about the member with the unknown format. We should probably simply warn on both. For now just check that we don't produce an error. RUN: llvm-nm %p/Inputs/corrupt-archive.a + + +RUN: llvm-nm %p/Inputs/thin.a | FileCheck %s -check-prefix THIN + +THIN: IsNAN.o: +THIN: 00000014 T _ZN4llvm5IsNANEd +THIN: 00000000 T _ZN4llvm5IsNANEf +THIN: U __isnan +THIN: U __isnanf