[lld] r257080 - Remove unnecessary type casts.

Davide Italiano via llvm-commits llvm-commits at lists.llvm.org
Thu Jan 7 10:31:01 PST 2016


On Thu, Jan 7, 2016 at 10:17 AM, Rui Ueyama via llvm-commits
<llvm-commits at lists.llvm.org> wrote:
> Author: ruiu
> Date: Thu Jan  7 12:17:29 2016
> New Revision: 257080
>
> URL: http://llvm.org/viewvc/llvm-project?rev=257080&view=rev
> Log:
> Remove unnecessary type casts.
>
> Modified:
>     lld/trunk/ELF/OutputSections.cpp
>
> Modified: lld/trunk/ELF/OutputSections.cpp
> URL: http://llvm.org/viewvc/llvm-project/lld/trunk/ELF/OutputSections.cpp?rev=257080&r1=257079&r2=257080&view=diff
> ==============================================================================
> --- lld/trunk/ELF/OutputSections.cpp (original)
> +++ lld/trunk/ELF/OutputSections.cpp Thu Jan  7 12:17:29 2016
> @@ -1161,8 +1161,7 @@ template <class ELFT> void MergeOutputSe
>
>  template <class ELFT>
>  StringTableSection<ELFT>::StringTableSection(StringRef Name, bool Dynamic)
> -    : OutputSectionBase<ELFT>(Name, SHT_STRTAB,
> -                              Dynamic ? (uintX_t)SHF_ALLOC : 0),
> +    : OutputSectionBase<ELFT>(Name, SHT_STRTAB, Dynamic ? SHF_ALLOC : 0),
>        Dynamic(Dynamic) {
>    this->Header.sh_addralign = 1;
>  }
> @@ -1235,7 +1234,7 @@ SymbolTableSection<ELFT>::SymbolTableSec
>      SymbolTable<ELFT> &Table, StringTableSection<ELFT> &StrTabSec)
>      : OutputSectionBase<ELFT>(StrTabSec.isDynamic() ? ".dynsym" : ".symtab",
>                                StrTabSec.isDynamic() ? SHT_DYNSYM : SHT_SYMTAB,
> -                              StrTabSec.isDynamic() ? (uintX_t)SHF_ALLOC : 0),
> +                              StrTabSec.isDynamic() ? SHF_ALLOC : 0),
>        Table(Table), StrTabSec(StrTabSec) {
>    typedef OutputSectionBase<ELFT> Base;
>    typename Base::Elf_Shdr &Header = this->Header;
>
>
> _______________________________________________
> llvm-commits mailing list
> llvm-commits at lists.llvm.org
> http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits

hmm, this or another commit between yesterday and today broke gcc-4.8
with -Werror on my PPC box. This seems the obvious culprit, but I
didn't dig into that (yet).

[13/15] Building CXX object tools/lld/...Files/lldELF2.dir/OutputSections.cpp.o
../tools/lld/ELF/OutputSections.cpp: In constructor
'lld::elf2::StringTableSection<ELFT>::StringTableSection(llvm::StringRef,
bool)':
../tools/lld/ELF/OutputSections.cpp:1164:71: warning: enumeral and
non-enumeral type in conditional expression [enabled by default]
     : OutputSectionBase<ELFT>(Name, SHT_STRTAB, Dynamic ? SHF_ALLOC : 0),
                                                                       ^
../tools/lld/ELF/OutputSections.cpp: In instantiation of
'lld::elf2::StringTableSection<ELFT>::StringTableSection(llvm::StringRef,
bool) [with ELFT = llvm::object::ELFType<
(llvm::support::endianness)1u, false>]':
../tools/lld/ELF/OutputSections.cpp:1517:16:   required from here
../tools/lld/ELF/OutputSections.cpp:1165:22: warning: enumeral and
non-enumeral type in conditional expression [enabled by default]
       Dynamic(Dynamic) {
                      ^
../tools/lld/ELF/OutputSections.cpp: In instantiation of
'lld::elf2::StringTableSection<ELFT>::StringTableSection(llvm::StringRef,
bool) [with ELFT = llvm::object::ELFType<
(llvm::support::endianness)0u, false>]':
../tools/lld/ELF/OutputSections.cpp:1518:16:   required from here
../tools/lld/ELF/OutputSections.cpp:1165:22: warning: enumeral and
non-enumeral type in conditional expression [enabled by default]
../tools/lld/ELF/OutputSections.cpp: In instantiation of
'lld::elf2::StringTableSection<ELFT>::StringTableSection(llvm::StringRef,
bool) [with ELFT = llvm::object::ELFType<
(llvm::support::endianness)1u, true>]':
../tools/lld/ELF/OutputSections.cpp:1519:16:   required from here
../tools/lld/ELF/OutputSections.cpp:1165:22: warning: enumeral and
non-enumeral type in conditional expression [enabled by default]
../tools/lld/ELF/OutputSections.cpp: In instantiation of
'lld::elf2::StringTableSection<ELFT>::StringTableSection(llvm::StringRef,
bool) [with ELFT = llvm::object::ELFType<
(llvm::support::endianness)0u, true>]':
../tools/lld/ELF/OutputSections.cpp:1520:16:   required from here
../tools/lld/ELF/OutputSections.cpp:1165:22: warning: enumeral and
non-enumeral type in conditional expression [enabled by default]
../tools/lld/ELF/OutputSections.cpp: In instantiation of
'lld::elf2::SymbolTableSection<ELFT>::SymbolTableSection(lld::elf2::SymbolTable<ELFT>&,
lld::elf2::StringTableSecti
on<ELFT>&) [with ELFT =
llvm::object::ELFType<(llvm::support::endianness)1u, false>]':
../tools/lld/ELF/OutputSections.cpp:1522:16:   required from here
../tools/lld/ELF/OutputSections.cpp:1237:53: warning: enumeral and
non-enumeral type in conditional expression [enabled by default]
                               StrTabSec.isDynamic() ? SHF_ALLOC : 0),

Can you please take a look?

Thanks!

-- 
Davide

"There are no solved problems; there are only problems that are more
or less solved" -- Henri Poincare


More information about the llvm-commits mailing list