COFF: Fix warnings found by gcc

llvm-svn: 238734
diff --git a/lld/COFF/InputFiles.cpp b/lld/COFF/InputFiles.cpp
index 6737e0f..038b80f 100644
--- a/lld/COFF/InputFiles.cpp
+++ b/lld/COFF/InputFiles.cpp
@@ -127,7 +127,7 @@
     if (Name == ".drectve") {
       ArrayRef<uint8_t> Data;
       COFFObj->getSectionContents(Sec, Data);
-      Directives = StringRef((char *)Data.data(), Data.size()).trim();
+      Directives = StringRef((const char *)Data.data(), Data.size()).trim();
       continue;
     }
     if (Name.startswith(".debug"))
@@ -201,7 +201,7 @@
   }
   if (IsFirst && AuxP) {
     if (Chunk *C = SparseChunks[Sym.getSectionNumber()]) {
-      auto *Aux = (coff_aux_section_definition *)AuxP;
+      auto *Aux = (coff_aux_section_definition *)const_cast<void *>(AuxP);
       auto *Parent =
           (SectionChunk *)(SparseChunks[Aux->getNumber(Sym.isBigObj())]);
       if (Parent)
@@ -219,7 +219,7 @@
   const auto *Hdr = reinterpret_cast<const coff_import_header *>(Buf);
 
   // Check if the total size is valid.
-  if (End - Buf != sizeof(*Hdr) + Hdr->SizeOfData) {
+  if ((size_t)(End - Buf) != (sizeof(*Hdr) + Hdr->SizeOfData)) {
     llvm::errs() << "broken import library\n";
     return make_error_code(LLDError::BrokenFile);
   }