<div dir="ltr">awesome, thanks for the context!</div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Tue, Jul 21, 2020 at 3:06 AM Michael Spencer <<a href="mailto:bigcheesegs@gmail.com">bigcheesegs@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div dir="ltr">On Mon, Jul 20, 2020 at 4:05 PM David Blaikie <<a href="mailto:dblaikie@gmail.com" target="_blank">dblaikie@gmail.com</a>> wrote:<br></div><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Could you update the comment to specify the exact version that was<br>
problematic? So it's easier to tell if this version is no longer<br>
supported & the code can be updated.<br></blockquote><div><br></div><div>Already done in 7fcc1bb4b654461c3109b01e1fe7eae191a86f7f. The actual issue wasn't libstdc++.</div><div><br></div><div><div><div dir="ltr">- Michael Spencer</div></div></div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
<br>
On Fri, Jul 17, 2020 at 12:34 PM Michael Spencer via llvm-commits<br>
<<a href="mailto:llvm-commits@lists.llvm.org" target="_blank">llvm-commits@lists.llvm.org</a>> wrote:<br>
><br>
><br>
> Author: Michael Spencer<br>
> Date: 2020-07-17T13:33:15-06:00<br>
> New Revision: fda901a987ddd7a59599c3dcaa6c9a18d959a9b3<br>
><br>
> URL: <a href="https://github.com/llvm/llvm-project/commit/fda901a987ddd7a59599c3dcaa6c9a18d959a9b3" rel="noreferrer" target="_blank">https://github.com/llvm/llvm-project/commit/fda901a987ddd7a59599c3dcaa6c9a18d959a9b3</a><br>
> DIFF: <a href="https://github.com/llvm/llvm-project/commit/fda901a987ddd7a59599c3dcaa6c9a18d959a9b3.diff" rel="noreferrer" target="_blank">https://github.com/llvm/llvm-project/commit/fda901a987ddd7a59599c3dcaa6c9a18d959a9b3.diff</a><br>
><br>
> LOG: [Clang] Fix building with Clang < 3.9.<br>
><br>
> This is a workaround for a bug in older versions of Clang when. The<br>
> constructor that is supposed to allow for Derived to Base conversion<br>
> does not work. Remove this if we drop support for such configurations.<br>
><br>
> Added:<br>
><br>
><br>
> Modified:<br>
>     llvm/utils/TableGen/OptParserEmitter.cpp<br>
><br>
> Removed:<br>
><br>
><br>
><br>
> ################################################################################<br>
> diff  --git a/llvm/utils/TableGen/OptParserEmitter.cpp b/llvm/utils/TableGen/OptParserEmitter.cpp<br>
> index 251533a8d154..34699b55e274 100644<br>
> --- a/llvm/utils/TableGen/OptParserEmitter.cpp<br>
> +++ b/llvm/utils/TableGen/OptParserEmitter.cpp<br>
> @@ -110,7 +110,11 @@ class MarshallingFlagInfo final : public MarshallingKindInfo {<br>
>    static std::unique_ptr<MarshallingKindInfo> create(const Record &R) {<br>
>      std::unique_ptr<MarshallingFlagInfo> Ret(new MarshallingFlagInfo(R));<br>
>      Ret->IsPositive = R.getValueAsBit("IsPositive");<br>
> -    return Ret;<br>
> +    // FIXME: This is a workaround for a bug in older versions of libstdc++ when<br>
> +    //   compiled with Clang. The constructor that is supposed to allow for<br>
> +    //   Derived to Base conversion does not work. Remove this if we drop<br>
> +    //   support for such configurations.<br>
> +    return std::unique_ptr<MarshallingKindInfo>(Ret.release());<br>
>    }<br>
><br>
>  private:<br>
> @@ -204,7 +208,11 @@ struct SimpleEnumValueTable {<br>
>               "values");<br>
>      }<br>
><br>
> -    return Ret;<br>
> +    // FIXME: This is a workaround for a bug in older versions of libstdc++ when<br>
> +    //   compiled with Clang. The constructor that is supposed to allow for<br>
> +    //   Derived to Base conversion does not work. Remove this if we drop<br>
> +    //   support for such configurations.<br>
> +    return std::unique_ptr<MarshallingKindInfo>(Ret.release());<br>
>    }<br>
><br>
>  private:<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="https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits" rel="noreferrer" target="_blank">https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits</a><br>
</blockquote></div></div>
</blockquote></div>