<div dir="ltr">Yes mostly, Thanks for the quick answer.</div><div class="gmail_extra"><br><div class="gmail_quote">On Tue, May 1, 2018 at 11:16 PM, Chris Bieneman <span dir="ltr"><<a href="mailto:chris.bieneman@me.com" target="_blank">chris.bieneman@me.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div style="word-wrap:break-word;line-break:after-white-space">LLVM does not allow the use of exceptions in our code. We do not allow throwing or catching them. That does not mean you cannot compile the code with exceptions enabled, it just means we don't use them.<div><br></div><div>Clang is a full C++ compiler. Even though LLVM & Clang do not use exceptions in their implementation, Clang does support compiling C++ code that uses exceptions.</div><div><br></div><div>Does this answer your question?</div><div><span class="HOEnZb"><font color="#888888">-Chris</font></span><div><div class="h5"><br><div><br><blockquote type="cite"><div>On May 1, 2018, at 10:38 AM, Siddharth Shankar Swain <<a href="mailto:h2015096@pilani.bits-pilani.ac.in" target="_blank">h2015096@pilani.bits-pilani.<wbr>ac.in</a>> wrote:</div><br class="m_6308434244037660170Apple-interchange-newline"><div><div dir="ltr">Hi Chris,<div>Thanks for answering, Can u clarify on this comment mentioned in <a href="https://github.com/Z3Prover/z3/issues/861" target="_blank">https://github.com/<wbr>Z3Prover/z3/issues/861</a> .</div><div><br></div><div> 

     

                                            <span>cplusplus no exception support · Issue #861 · Z3Prover/z3 · GitHub</span>                                                                                                                                           <div class="m_6308434244037660170gmail-application-main"><div><div id="m_6308434244037660170gmail-js-repo-pjax-container"><div class="m_6308434244037660170gmail-container m_6308434244037660170gmail-new-discussion-timeline m_6308434244037660170experiment-repo-nav"><div class="m_6308434244037660170gmail-repository-content"><div class="m_6308434244037660170gmail-issues-listing"><div class="m_6308434244037660170gmail-js-issues-results" id="m_6308434244037660170gmail-show_issue"><div class="m_6308434244037660170gmail-clearfix" id="m_6308434244037660170gmail-discussion_bucket"><div class="m_6308434244037660170gmail-js-quote-selection-container m_6308434244037660170gmail-discussion-timeline"><div class="m_6308434244037660170gmail-js-discussion m_6308434244037660170gmail-js-socket-channel"><div class="m_6308434244037660170gmail-js-timeline-progressive-focus-container m_6308434244037660170gmail-js-timeline-item"><div class="m_6308434244037660170gmail-timeline-comment-wrapper"><div class="m_6308434244037660170gmail-js-minimizable-comment-group"><div class="m_6308434244037660170gmail-comment m_6308434244037660170gmail-js-task-list-container m_6308434244037660170gmail-timeline-comment m_6308434244037660170gmail-previewable-edit m_6308434244037660170gmail-unminimized-comment m_6308434244037660170gmail-js-comment" id="m_6308434244037660170gmail-issuecomment-270629415"><div class="m_6308434244037660170edit-comment-hide"><span disabled><table class="m_6308434244037660170gmail-d-block"><tbody class="m_6308434244037660170gmail-d-block"><tr class="m_6308434244037660170gmail-d-block"><td class="m_6308434244037660170gmail-d-block m_6308434244037660170gmail-markdown-body m_6308434244037660170gmail-js-comment-body m_6308434244037660170gmail-comment-body"><ul><li>LLVM's <strong>source code</strong> does not use exceptions for performance reasons and so is compiled by default with <code>-fno-exceptions</code>. When using LLVM's libraries via it's C++ interface it is important to match how LLVM was built (i.e. do not mix code built with and without exception support).</li><li>The Clang compiler which is built on top of LLVM is also compiled without exceptions by default. However the built Clang can compile C++ code with or without exceptions (using the <code>-fno-exceptions</code>). flag. Said another way Clang's implementation doesn't use exceptions but Clang itself can compile C++ code with or without exception support.</li></ul><div><br></div><div>Can anyone clarify on this comment ?</div><div><br></div><div>Thanks,</div><div>Siddharth</div></td></tr></tbody></table></span></div></div></div></div></div></div></div></div></div></div></div></div></div></div></div></div></div><div class="gmail_extra"><br><div class="gmail_quote">On Tue, May 1, 2018 at 11:02 PM, Chris Bieneman <span dir="ltr"><<a href="mailto:chris.bieneman@me.com" target="_blank">chris.bieneman@me.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div style="word-wrap:break-word;line-break:after-white-space">Siddharth,<div><br></div><div>I'm not sure what coding standards you refer to when you say "some C++ coding standard". This question is answered in the LLVM Coding Standards document here:</div><div><br></div><div><a href="https://www.llvm.org/docs/CodingStandards.html#do-not-use-rtti-or-exceptions" target="_blank">https://www.llvm.org/docs/Codi<wbr>ngStandards.html#do-not-use-<wbr>rtti-or-exceptions</a></div><div><br></div><div>As such LLVM's coding standards prohibit the use of exceptions and RTTI.</div><div><br></div><div>-Chris<br><div><br><blockquote type="cite"><div><div class="m_6308434244037660170h5"><div>On May 1, 2018, at 10:02 AM, Siddharth Shankar Swain via llvm-dev <<a href="mailto:llvm-dev@lists.llvm.org" target="_blank">llvm-dev@lists.llvm.org</a>> wrote:</div><br class="m_6308434244037660170m_4646234902080641791Apple-interchange-newline"></div></div><div><div><div class="m_6308434244037660170h5"><div dir="ltr">Hi all,<div>Can anyone explain why exceptions are disabled in LLVM, even if some C++ coding standard tells to use exceptions ?</div><div>Thanks,</div><div>Siddharth</div></div></div></div>
______________________________<wbr>_________________<br>LLVM Developers mailing list<br><a href="mailto:llvm-dev@lists.llvm.org" target="_blank">llvm-dev@lists.llvm.org</a><br><a href="http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev" target="_blank">http://lists.llvm.org/cgi-bin/<wbr>mailman/listinfo/llvm-dev</a><br></div></blockquote></div><br></div></div></blockquote></div><br></div>
</div></blockquote></div><br></div></div></div></div></blockquote></div><br></div>