<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</head>
<body bgcolor="#FFFFFF" text="#000000">
<p><br>
</p>
<br>
<div class="moz-cite-prefix">On 7/31/17 11:44 AM, David Blaikie
wrote:<br>
</div>
<blockquote type="cite"
cite="mid:CAENS6Evb80-7D9oCc6XnNhFbpGk4zSk5ytwpURqwuT8XqE11JA@mail.gmail.com">
<div dir="ltr"><br>
<br>
<div class="gmail_quote">
<div dir="ltr">On Thu, Jul 27, 2017 at 6:35 PM Erik Pilkington
via cfe-commits <<a
href="mailto:cfe-commits@lists.llvm.org"
moz-do-not-send="true">cfe-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:
epilk<br>
Date: Thu Jul 27 18:35:14 2017<br>
New Revision: 309349<br>
<br>
URL: <a
href="http://llvm.org/viewvc/llvm-project?rev=309349&view=rev"
rel="noreferrer" target="_blank" moz-do-not-send="true">http://llvm.org/viewvc/llvm-project?rev=309349&view=rev</a><br>
Log:<br>
[demangler] Fix some overzealous -Wreturn-type errors<br>
</blockquote>
<div><br>
I'm guessing this is GCC's -Wreturn-type after a
fully-covered-all-returning switch?<br>
</div>
</div>
</div>
</blockquote>
Yep, thats exactly the problem.<br>
<blockquote type="cite"
cite="mid:CAENS6Evb80-7D9oCc6XnNhFbpGk4zSk5ytwpURqwuT8XqE11JA@mail.gmail.com">
<div dir="ltr">
<div class="gmail_quote">
<div>That's usually addressed by using llvm_unreachable after
the switch, rather than a dead return. (not sure if you've
something like llvm_unreachable in libcxxabi to use?)<br>
</div>
</div>
</div>
</blockquote>
Turns out there is a macro for this in libcxxabi. r309649 updates
this to use that macro.<br>
<br>
Thanks!<br>
Erik<br>
<blockquote type="cite"
cite="mid:CAENS6Evb80-7D9oCc6XnNhFbpGk4zSk5ytwpURqwuT8XqE11JA@mail.gmail.com">
<div dir="ltr">
<div class="gmail_quote">
<div> </div>
<blockquote class="gmail_quote" style="margin:0 0 0
.8ex;border-left:1px #ccc solid;padding-left:1ex">
<br>
Modified:<br>
libcxxabi/trunk/src/cxa_demangle.cpp<br>
<br>
Modified: libcxxabi/trunk/src/cxa_demangle.cpp<br>
URL: <a
href="http://llvm.org/viewvc/llvm-project/libcxxabi/trunk/src/cxa_demangle.cpp?rev=309349&r1=309348&r2=309349&view=diff"
rel="noreferrer" target="_blank" moz-do-not-send="true">http://llvm.org/viewvc/llvm-project/libcxxabi/trunk/src/cxa_demangle.cpp?rev=309349&r1=309348&r2=309349&view=diff</a><br>
==============================================================================<br>
--- libcxxabi/trunk/src/cxa_demangle.cpp (original)<br>
+++ libcxxabi/trunk/src/cxa_demangle.cpp Thu Jul 27 18:35:14
2017<br>
@@ -896,6 +896,7 @@ public:<br>
case SpecialSubKind::iostream:<br>
return StringView("basic_iostream");<br>
}<br>
+ return StringView();<br>
}<br>
<br>
void printLeft(OutputStream &S) const override {<br>
@@ -944,6 +945,7 @@ public:<br>
case SpecialSubKind::iostream:<br>
return StringView("iostream");<br>
}<br>
+ return StringView();<br>
}<br>
<br>
void printLeft(OutputStream &S) const override {<br>
<br>
<br>
_______________________________________________<br>
cfe-commits mailing list<br>
<a href="mailto:cfe-commits@lists.llvm.org" target="_blank"
moz-do-not-send="true">cfe-commits@lists.llvm.org</a><br>
<a
href="http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits"
rel="noreferrer" target="_blank" moz-do-not-send="true">http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits</a><br>
</blockquote>
</div>
</div>
</blockquote>
<br>
</body>
</html>