<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="Generator" content="Microsoft Exchange Server">
<!-- converted from rtf -->
<style><!-- .EmailQuote { margin-left: 1pt; padding-left: 4pt; border-left: #800000 2px solid; } --></style>
</head>
<body>
<font face="Calibri" size="2"><span style="font-size:11pt;">
<div>Hi Duncan,</div>
<div> </div>
<div>Gentle Reminder. We are waiting for your guidance.</div>
<div> </div>
<div>Thanks & Regards,</div>
<div>P. Prasath.<a name="_MailEndCompose"></a></div>
<div><font face="Calibri">_____________________________________________<br>
<b>From:</b> Prasath Palaniappan <br>
<b>Sent:</b> Wednesday, April 10, 2019 4:34 PM<br>
<b>To:</b> Duncan Grisby <duncan@grisby.org>; omniorb-list@omniorb-support.com<br>
<b>Cc:</b> Shankar Chinnusamy <Shankar_Chinnusamy@amat.com>; Sendil Natarajan <Sendil_Natarajan@amat.com><br>
<b>Subject:</b> RE: [External] Re: [omniORB] OmniORB-4.2.2 compiled with gcc8 and C++14 leads into crash</font></div>
<div><font face="Calibri"> </font></div>
<div><font face="Calibri"> </font></div>
<div><font face="Calibri">Hi Duncan,</font></div>
<div><font face="Calibri"> </font></div>
<div><font face="Calibri">Thanks for your guidance.</font></div>
<div><font face="Calibri"> </font></div>
<div><font face="Calibri">I described here what we need to proceed further.</font></div>
<div><font face="Calibri"> </font></div>
<div><font face="Calibri"><b>Our Requirement:</b></font></div>
<div><font face="Calibri">As you aware we have been using OmniORB-4.2.2 which is compiled with “gcc4.8 and C++14”. </font></div>
<div><font face="Calibri">Moving forward we will be using “gcc8 and C++17”. </font></div>
<div><font face="Calibri">So, we are in need to compile and use the OmniORB-4.2.2 with "gcc8 and C++17".</font></div>
<div><font face="Calibri"> </font></div>
<div><font face="Calibri"><b>What we did:</b></font></div>
<div><font face="Calibri">OmniORB-4.2.2 has dynamic exception specifications those are unsupported in C++17. </font></div>
<div><font face="Calibri">So we removed those unsupported dynamic exception specifications and compiled the OmniORB-4.2.2 with "gcc8 and C++17".</font></div>
<div><font face="Calibri" size="2" color="#833C0B"><span style="font-size:10.5pt;">virtual void visit(const char* value,Source source) <b>throw (BadParam)</b> = 0;</span></font></div>
<div><font face="Calibri"> </font></div>
<div><font face="Calibri">Apart from those changes what else need to be done to compile the OmniORB-4.2.2 with "gcc8 and C++17" properly?</font></div>
<div><font face="Calibri"> </font></div>
<div><font face="Calibri"><b>Clarifications:</b></font></div>
<div><font face="Calibri">As you mentioned that you have removed throw specifications in OmniORB-4.3 to support future compilers and it is in development branch. If so, could you please let us know when it will be released?</font></div>
<div><font face="Calibri">If it will take more time to release, Could you please provide that what are the changes need to be done in OmniORB-4.2.2 to support C++17 without any issue? </font></div>
<div><font face="Calibri">It would be good if you can share the changes what has been done in OmniORB-4.3 over OmniORB-4.2.x to support future compiler as a patch file?</font></div>
<div><font face="Calibri"> </font></div>
<div><font face="Calibri">Thanks & Regards,</font></div>
<div><font face="Calibri">P. Prasath.</font></div>
<div><font face="Calibri"> </font></div>
<div><font face="Calibri">-----Original Message-----<br>
From: Duncan Grisby <<a href="mailto:duncan@grisby.org"><font color="#0563C1"><u>duncan@grisby.org</u></font></a>>
<br>
Sent: Friday, March 29, 2019 7:44 PM<br>
To: Prasath Palaniappan <<a href="mailto:Prasath_Palaniappan@amat.com"><font color="#0563C1"><u>Prasath_Palaniappan@amat.com</u></font></a>>; <a href="mailto:omniorb-list@omniorb-support.com"><font color="#0563C1"><u>omniorb-list@omniorb-support.com</u></font></a><br>
Cc: Shankar Chinnusamy <<a href="mailto:Shankar_Chinnusamy@amat.com"><font color="#0563C1"><u>Shankar_Chinnusamy@amat.com</u></font></a>>; Sendil Natarajan <<a href="mailto:Sendil_Natarajan@amat.com"><font color="#0563C1"><u>Sendil_Natarajan@amat.com</u></font></a>><br>
Subject: Re: [External] Re: [omniORB] OmniORB-4.2.2 compiled with gcc8 and C++14 leads into crash</font></div>
<div><font face="Calibri"> </font></div>
<div><font face="Calibri"> </font></div>
<div><font face="Calibri">CAUTION: EXTERNAL EMAIL. Verify before you click links or open attachments. Questions? Contact GIS.</font></div>
<div><font face="Calibri"> </font></div>
<div><font face="Calibri"> </font></div>
<div><font face="Calibri"> </font></div>
<div><font face="Calibri">On Fri, 2019-03-29 at 13:37 +0000, <a href="mailto:Prasath_Palaniappan@amat.com">Prasath_Palaniappan@amat.com</a> wrote:</font></div>
<div><font face="Calibri"> </font></div>
<div><font face="Calibri">> > You need to figure out why your build broke the exception handling:</font></div>
<div><font face="Calibri">></font></div>
<div><font face="Calibri">> Dynamic exception specification throw(type) is deprecated in C++17 </font></div>
<div><font face="Calibri">> <a href="https://en.cppreference.com/w/cpp/language/except_spec">https://en.cppreference.com/w/cpp/language/except_spec</a></font></div>
<div><font face="Calibri">></font></div>
<div><font face="Calibri">> When compiled the OmniORB-4.2.2 source with “gcc8 and C++17”, we </font></div>
<div><font face="Calibri">> resolved the compilation errors related to dynamic exception </font></div>
<div><font face="Calibri">> specifications those are unsupported in C++17. Mentioned few headers </font></div>
<div><font face="Calibri">> below, virtual void visit(const char* value,Source source) throw </font></div>
<div><font face="Calibri">> (BadParam) = 0;</font></div>
<div><font face="Calibri"> </font></div>
<div><font face="Calibri">That is a totally unrelated area of the code. Those throw specifications have already been removed from the omniORB 4.3 development branch, but they cannot be removed from 4.2.x because that could break binary library compatibility
in some environments.</font></div>
<div><font face="Calibri"> </font></div>
<div><font face="Calibri">Whether you have removed those throw specifications from your code or not will have absolutely no bearing on the problem you are seeing, because your situation does not involve those functions or those exceptions. The functions and
exceptions involved in the error you see do not have throw specifications.</font></div>
<div><font face="Calibri"> </font></div>
<div><font face="Calibri">omniORB's code is throwing giopStream::CommFailure. Higher up the call chain there are exception handlers for that, and your own testing shows that the exceptions are caught and handled fine when the code is compiled with a different
compiler. For some reason it does not work with your newer compiler. I don't know why not, but it is not a problem in omniORB's code. It is a problem in your compiler or runtime environment.</font></div>
<div><font face="Calibri"> </font></div>
<div><font face="Calibri">Duncan.</font></div>
<div><font face="Calibri"> </font></div>
<div><font face="Calibri">--</font></div>
<div><font face="Calibri"> -- Duncan Grisby --</font></div>
<div><font face="Calibri"> -- <a href="mailto:duncan@grisby.org">duncan@grisby.org</a> --</font></div>
<div><font face="Calibri"> -- <a href="http://www.grisby.org">http://www.grisby.org</a> --</font></div>
<div><font face="Calibri"> </font></div>
<div><font face="Calibri"> </font></div>
<div><font face="Calibri">The content of this message is APPLIED MATERIALS CONFIDENTIAL. If you are not the intended recipient, please notify me, delete this email and do not use or distribute this email. </font></div>
</span></font>
</body>
</html>