<div dir="ltr">I think you can still use Config->IsLE. If you use Config->EKind and a switch-case, you needed to have a `default` clause like this. So, I'd suggest something like<div><br></div><div>  if (Config->IsLE)</div><div>    EFlags = cast<>...</div><div>  else</div><div>    EFlags = cast<>...</div></div><br><div class="gmail_quote"><div dir="ltr">On Fri, May 4, 2018 at 9:07 AM Zaara Syeda via llvm-commits <<a href="mailto:llvm-commits@lists.llvm.org">llvm-commits@lists.llvm.org</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Author: syzaara<br>
Date: Fri May  4 09:04:04 2018<br>
New Revision: 331534<br>
<br>
URL: <a href="http://llvm.org/viewvc/llvm-project?rev=331534&view=rev" rel="noreferrer" target="_blank">http://llvm.org/viewvc/llvm-project?rev=331534&view=rev</a><br>
Log:<br>
[PPC64] Remove support for ELF V1 ABI in LLD - buildbot fix<br>
<br>
Fix buildbot error, failure to build with msvc due to error C2446<br>
Use switch instead of ternary operator.<br>
<br>
Differential Revision: <a href="https://reviews.llvm.org/D46316" rel="noreferrer" target="_blank">https://reviews.llvm.org/D46316</a><br>
<br>
Modified:<br>
    lld/trunk/ELF/Arch/PPC64.cpp<br>
<br>
Modified: lld/trunk/ELF/Arch/PPC64.cpp<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/lld/trunk/ELF/Arch/PPC64.cpp?rev=331534&r1=331533&r2=331534&view=diff" rel="noreferrer" target="_blank">http://llvm.org/viewvc/llvm-project/lld/trunk/ELF/Arch/PPC64.cpp?rev=331534&r1=331533&r2=331534&view=diff</a><br>
==============================================================================<br>
--- lld/trunk/ELF/Arch/PPC64.cpp (original)<br>
+++ lld/trunk/ELF/Arch/PPC64.cpp Fri May  4 09:04:04 2018<br>
@@ -97,10 +97,17 @@ PPC64::PPC64() {<br>
 static uint32_t getEFlags(InputFile *File) {<br>
   // Get the e_flag from the input file and issue an error if incompatible<br>
   // e_flag encountered.<br>
-<br>
-  uint32_t EFlags = Config->IsLE ?<br>
-    cast<ObjFile<ELF64LE>>(File)->getObj().getHeader()->e_flags :<br>
-    cast<ObjFile<ELF64BE>>(File)->getObj().getHeader()->e_flags;<br>
+  uint32_t EFlags;<br>
+  switch (Config->EKind) {<br>
+  case ELF64BEKind:<br>
+    EFlags = cast<ObjFile<ELF64BE>>(File)->getObj().getHeader()->e_flags;<br>
+    break;<br>
+  case ELF64LEKind:<br>
+    EFlags = cast<ObjFile<ELF64LE>>(File)->getObj().getHeader()->e_flags;<br>
+    break;<br>
+  default:<br>
+    llvm_unreachable("unknown Config->EKind");<br>
+  }<br>
   if (EFlags > 2) {<br>
     error("incompatible e_flags: " +  toString(File));<br>
     return 0;<br>
<br>
<br>
_______________________________________________<br>
llvm-commits mailing list<br>
<a href="mailto:llvm-commits@lists.llvm.org" target="_blank">llvm-commits@lists.llvm.org</a><br>
<a href="http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits" rel="noreferrer" target="_blank">http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits</a><br>
</blockquote></div>