<div dir="ltr">Might be handy to have a link to the buildbot failure and/or quote the error messages in the commit message for reference (so someone else can confirm the error they're seeing is the same one being addressed here, or ensure they don't make the same mistake with a similar refactor, etc)</div><br><div class="gmail_quote"><div dir="ltr">On Wed, Feb 14, 2018 at 2:45 PM Rui Ueyama 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: ruiu<br>
Date: Wed Feb 14 14:43:43 2018<br>
New Revision: 325183<br>
<br>
URL: <a href="http://llvm.org/viewvc/llvm-project?rev=325183&view=rev" rel="noreferrer" target="_blank">http://llvm.org/viewvc/llvm-project?rev=325183&view=rev</a><br>
Log:<br>
Revert r325158: Convert an assert to a static_assert. NFC.<br>
<br>
This reverts commit r325158 because it broke GCC builds.<br>
<br>
Modified:<br>
    lld/trunk/COFF/Symbols.h<br>
    lld/trunk/ELF/Symbols.h<br>
    lld/trunk/wasm/Symbols.h<br>
<br>
Modified: lld/trunk/COFF/Symbols.h<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/lld/trunk/COFF/Symbols.h?rev=325183&r1=325182&r2=325183&view=diff" rel="noreferrer" target="_blank">http://llvm.org/viewvc/llvm-project/lld/trunk/COFF/Symbols.h?rev=325183&r1=325182&r2=325183&view=diff</a><br>
==============================================================================<br>
--- lld/trunk/COFF/Symbols.h (original)<br>
+++ lld/trunk/COFF/Symbols.h Wed Feb 14 14:43:43 2018<br>
@@ -421,8 +421,8 @@ void replaceSymbol(Symbol *S, ArgT &&...<br>
   static_assert(sizeof(T) <= sizeof(SymbolUnion), "Symbol too small");<br>
   static_assert(alignof(T) <= alignof(SymbolUnion),<br>
                 "SymbolUnion not aligned enough");<br>
-  static_assert(static_cast<Symbol *>(static_cast<T *>(nullptr)) == nullptr,<br>
-                "Not a Symbol");<br>
+  assert(static_cast<Symbol *>(static_cast<T *>(nullptr)) == nullptr &&<br>
+         "Not a Symbol");<br>
   new (S) T(std::forward<ArgT>(Arg)...);<br>
 }<br>
 } // namespace coff<br>
<br>
Modified: lld/trunk/ELF/Symbols.h<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/lld/trunk/ELF/Symbols.h?rev=325183&r1=325182&r2=325183&view=diff" rel="noreferrer" target="_blank">http://llvm.org/viewvc/llvm-project/lld/trunk/ELF/Symbols.h?rev=325183&r1=325182&r2=325183&view=diff</a><br>
==============================================================================<br>
--- lld/trunk/ELF/Symbols.h (original)<br>
+++ lld/trunk/ELF/Symbols.h Wed Feb 14 14:43:43 2018<br>
@@ -355,8 +355,8 @@ void replaceSymbol(Symbol *S, ArgT &&...<br>
   static_assert(sizeof(T) <= sizeof(SymbolUnion), "SymbolUnion too small");<br>
   static_assert(alignof(T) <= alignof(SymbolUnion),<br>
                 "SymbolUnion not aligned enough");<br>
-  static_assert(static_cast<Symbol *>(static_cast<T *>(nullptr)) == nullptr,<br>
-                "Not a Symbol");<br>
+  assert(static_cast<Symbol *>(static_cast<T *>(nullptr)) == nullptr &&<br>
+         "Not a Symbol");<br>
<br>
   Symbol Sym = *S;<br>
<br>
<br>
Modified: lld/trunk/wasm/Symbols.h<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/lld/trunk/wasm/Symbols.h?rev=325183&r1=325182&r2=325183&view=diff" rel="noreferrer" target="_blank">http://llvm.org/viewvc/llvm-project/lld/trunk/wasm/Symbols.h?rev=325183&r1=325182&r2=325183&view=diff</a><br>
==============================================================================<br>
--- lld/trunk/wasm/Symbols.h (original)<br>
+++ lld/trunk/wasm/Symbols.h Wed Feb 14 14:43:43 2018<br>
@@ -240,8 +240,8 @@ T *replaceSymbol(Symbol *S, ArgT &&... A<br>
   static_assert(sizeof(T) <= sizeof(SymbolUnion), "Symbol too small");<br>
   static_assert(alignof(T) <= alignof(SymbolUnion),<br>
                 "SymbolUnion not aligned enough");<br>
-  static_assert(static_cast<Symbol *>(static_cast<T *>(nullptr)) == nullptr,<br>
-                "Not a Symbol");<br>
+  assert(static_cast<Symbol *>(static_cast<T *>(nullptr)) == nullptr &&<br>
+         "Not a Symbol");<br>
   return new (S) T(std::forward<ArgT>(Arg)...);<br>
 }<br>
<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>