<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: __nullref problem? in Operating System - Linux</title>
    <link>https://community.hpe.com/t5/operating-system-linux/nullref-problem/m-p/5113187#M91791</link>
    <description>We have wrongly used the -Wl -B Symbolic while building the C++ application as well. It should not have been. On removing that it is working as desired. Thanks to Dennis.</description>
    <pubDate>Thu, 12 Jun 2008 07:13:53 GMT</pubDate>
    <dc:creator>std::__nullref problem?</dc:creator>
    <dc:date>2008-06-12T07:13:53Z</dc:date>
    <item>
      <title>__nullref problem?</title>
      <link>https://community.hpe.com/t5/operating-system-linux/nullref-problem/m-p/5113179#M91783</link>
      <description>Hello, All.&lt;BR /&gt;&lt;BR /&gt;We are facing some issues while running our application. We are getting the exception; the trace is here. &lt;BR /&gt;#0  0x87ffffffed2fb090:0 in kill+0x30 () from /usr/lib/hpux64/libc.so.1&lt;BR /&gt;#1  0x87ffffffed21f2f0:0 in raise+0x30 () from /usr/lib/hpux64/libc.so.1&lt;BR /&gt;#2  0x87ffffffed2bcc70:0 in abort+0x190 () from /usr/lib/hpux64/libc.so.1&lt;BR /&gt;#3  0x87ffffffed649cf0:0 in std::terminate()+0x50 ()&lt;BR /&gt;   from /usr/lib/hpux64/libCsup.so.1&lt;BR /&gt;#4  0x87ffffffed6492e0:0 in __cxa_personality_routine+0xa80 ()&lt;BR /&gt;   from /usr/lib/hpux64/libCsup.so.1&lt;BR /&gt;#5  0x87ffffffed445180:0 in _Unwind_RaiseException+0x340 ()&lt;BR /&gt;   from /usr/lib/hpux64/libunwind.so.1&lt;BR /&gt;#6  0x87ffffffed670ea0:0 in __cxa_throw+0x100 ()&lt;BR /&gt;   from /usr/lib/hpux64/libCsup.so.1&lt;BR /&gt;#7  0x87ffffffef6fd7b0:2 in inline __rw::__rw_mutex_base::_C_acquire() ()&lt;BR /&gt;    at /opt/aCC/include_std/rw/stdmutex.h:266&lt;BR /&gt;#8  0x87ffffffef6fd5e0:1 in inline __rw::__rw_guard::__rw_guard(__rw::__rw_mutex_base&amp;amp;) () at /opt/aCC/include_std/rw/stdmutex.h:493&lt;BR /&gt;#9  0x87ffffffef6fd5d0:1 in inline __rw::__rw_atomic_predecrement&lt;LONG&gt;(long&amp;amp;,__rw::__rw_mutex_base&amp;amp;) () at /opt/aCC/include_std/rw/stdmutex.h:560&lt;BR /&gt;#10 0x87ffffffef6fd5d0:0 in inline __rw::__string_ref&lt;UNSIGNED short=""&gt;,std::allocator&lt;UNSIGNED short=""&gt; &amp;gt;::__removeReference() ()&lt;BR /&gt;    at /opt/aCC/include_std/rw/string_ref:260&lt;BR /&gt;#11 0x87ffffffef6fd550:0 in inline std::basic_string&lt;UNSIGNED short=""&gt;,std::allocator&lt;UNSIGNED short=""&gt; &amp;gt;::_C_unlink() ()&lt;BR /&gt;    at /opt/aCC/include_std/string:995&lt;BR /&gt;---Type &lt;RETURN&gt; to continue, or q &lt;RETURN&gt; to quit---&lt;BR /&gt;#12 0x87ffffffef6fd520:0 in inline std::basic_string&lt;UNSIGNED short=""&gt;,std::allocator&lt;UNSIGNED short=""&gt; &amp;gt;::~basic_string() ()&lt;BR /&gt;    at /opt/aCC/include_std/string:361&lt;BR /&gt;#13 0x87ffffffef6fd510:0 in SOFAString::~SOFAString (this=0x87ffffffffffd1d8)&lt;BR /&gt;    at source/sofastring.cpp:1180&lt;BR /&gt;#14 0x87ffffffed0e6920:0 in common::NameValueSet::Lexer::~Lexer (&lt;BR /&gt;    this=0x87ffffffffffd1d0)&lt;BR /&gt;&lt;BR /&gt;[where Lexer and SOFAString is our internal implementation. And SOFAString is derived from ustring] &lt;BR /&gt;&lt;BR /&gt;By looking at this trace we are just wondering that whether it is related to with multiple __nullref references [is there any way to prove this in HP-UX - like LD_DEBUG in Solaris - We tried to use _HPDLDOPTS= .warnings. but some how we were not able to get the warnings? [Why we are suspecting the above trace may be due to because __nullref thing, if we some how bypass the above step we will end up getting core due to bad free - that too in the SOFA Destructor. And some documentation in the net pointed out that above symptom may be because of having multiple __nullref thing.]&lt;BR /&gt;&lt;BR /&gt;So could you please tell us more about the above back trace and is it some thing related to using/not using some hp ux acc compiler setting and flags like -AA/ -AP etc - though we have ported our application to hp unix just now, we have used -mt, -AA consistently.  &lt;BR /&gt;&lt;BR /&gt;Thanks a lot in advance for all your help. &lt;BR /&gt;&lt;BR /&gt;Thank you.&lt;BR /&gt;&lt;BR /&gt;Best Regards,&lt;BR /&gt;Prasanna.&lt;/UNSIGNED&gt;&lt;/UNSIGNED&gt;&lt;/RETURN&gt;&lt;/RETURN&gt;&lt;/UNSIGNED&gt;&lt;/UNSIGNED&gt;&lt;/UNSIGNED&gt;&lt;/UNSIGNED&gt;&lt;/LONG&gt;</description>
      <pubDate>Tue, 10 Jun 2008 12:14:11 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-linux/nullref-problem/m-p/5113179#M91783</guid>
      <dc:creator>std::__nullref problem?</dc:creator>
      <dc:date>2008-06-10T12:14:11Z</dc:date>
    </item>
    <item>
      <title>Re: __nullref problem?</title>
      <link>https://community.hpe.com/t5/operating-system-linux/nullref-problem/m-p/5113180#M91784</link>
      <description>Just want to add another information. It is "single" threaded environment. It is the only one thread running.</description>
      <pubDate>Tue, 10 Jun 2008 12:35:52 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-linux/nullref-problem/m-p/5113180#M91784</guid>
      <dc:creator>std::__nullref problem?</dc:creator>
      <dc:date>2008-06-10T12:35:52Z</dc:date>
    </item>
    <item>
      <title>Re: __nullref problem?</title>
      <link>https://community.hpe.com/t5/operating-system-linux/nullref-problem/m-p/5113181#M91785</link>
      <description>&amp;gt;We are getting the exception; the trace is here.&lt;BR /&gt;&lt;BR /&gt;Where is the "aCC runtime:" error message?&lt;BR /&gt;What version of the aC++ runtime are you using?  What version of aC++ are you using?&lt;BR /&gt;&lt;BR /&gt;&amp;gt;related to with multiple __nullref references &lt;BR /&gt;&lt;BR /&gt;It's very possible.  If you use any strings other than basic_string&lt;CHAR&gt; or basic_string&lt;WCHAR_T&gt;, you are on your own!&lt;BR /&gt;&lt;BR /&gt;&amp;gt;we have used -mt, -AA consistently.&lt;BR /&gt;&lt;BR /&gt;This typically occurs because you didn't use -mt for every stinkin' aC++ object file.&lt;BR /&gt;&lt;BR /&gt;&amp;gt;It is "single" threaded environment. It is the only one thread running.&lt;BR /&gt;&lt;BR /&gt;You are confused.  If you link in libpthread, it is multithreaded, period.&lt;/WCHAR_T&gt;&lt;/CHAR&gt;</description>
      <pubDate>Tue, 10 Jun 2008 17:50:31 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-linux/nullref-problem/m-p/5113181#M91785</guid>
      <dc:creator>Dennis Handly</dc:creator>
      <dc:date>2008-06-10T17:50:31Z</dc:date>
    </item>
    <item>
      <title>Re: __nullref problem?</title>
      <link>https://community.hpe.com/t5/operating-system-linux/nullref-problem/m-p/5113182#M91786</link>
      <description>&amp;gt;ME: If you use any strings other than basic_string&lt;CHAR&gt; or basic_string&lt;WCHAR_T&gt;, you are on your own!&lt;BR /&gt;&lt;BR /&gt;Basically you'll need to go through every load module and figure out where the duplicate definitions of __nullref occur.  Then pick a unique owner and "remove" the rest.&lt;/WCHAR_T&gt;&lt;/CHAR&gt;</description>
      <pubDate>Tue, 10 Jun 2008 20:12:16 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-linux/nullref-problem/m-p/5113182#M91786</guid>
      <dc:creator>Dennis Handly</dc:creator>
      <dc:date>2008-06-10T20:12:16Z</dc:date>
    </item>
    <item>
      <title>Re: __nullref problem?</title>
      <link>https://community.hpe.com/t5/operating-system-linux/nullref-problem/m-p/5113183#M91787</link>
      <description>Thanks a lot for the reply.&lt;BR /&gt;&lt;BR /&gt;We are using aCC version. &lt;BR /&gt;aCC: HP C/aC++ B3910B A.06.15 [May 16 2007]&lt;BR /&gt;&lt;BR /&gt;Well. How can I verify that there are multiple nullref definition across libraries? can I rely on nm command - some thing like &lt;BR /&gt;-bash-3.2$ nm -p libmda_support.so | grep nullref | c++filt&lt;BR /&gt;&lt;BR /&gt;0004611686018427986032 T  __sinit__ZNSbItSt11char_traitsItESaItEE9__nullrefE()&lt;BR /&gt;&lt;BR /&gt;0006917529027641096608 B  guard of std::basic_string&lt;UNSIGNED short=""&gt;,std::allocator&lt;UNSIGNED short=""&gt; &amp;gt;::__nullref&lt;BR /&gt;&lt;BR /&gt;0006917529027641096960 B  std::basic_string&lt;UNSIGNED short=""&gt;,std::allocator&lt;UNSIGNED short=""&gt; &amp;gt;::__nullref&lt;BR /&gt;&lt;BR /&gt;0000000000000000000000 U  std::basic_string&lt;WCHAR_T&gt;,std::allocator&lt;WCHAR_T&gt; &amp;gt;::__nullref&lt;BR /&gt;&lt;BR /&gt;0000000000000000000000 U  std::basic_string&lt;CHAR&gt;,std::allocator&lt;CHAR&gt; &amp;gt;::__nullref&lt;BR /&gt;&lt;BR /&gt; &lt;BR /&gt;Is the above output say that there are multiple nullref things? is that above confirm that the problem is with multiple __nullref or is it some thing expected? &lt;BR /&gt;&lt;BR /&gt;Also when I said single threaded I meant was there was only one thread running when we did info threads. &lt;BR /&gt;&lt;BR /&gt;Thanks again for all your help again. &lt;BR /&gt;&lt;BR /&gt;Thanks,&lt;BR /&gt;Prasanna.&lt;/CHAR&gt;&lt;/CHAR&gt;&lt;/WCHAR_T&gt;&lt;/WCHAR_T&gt;&lt;/UNSIGNED&gt;&lt;/UNSIGNED&gt;&lt;/UNSIGNED&gt;&lt;/UNSIGNED&gt;</description>
      <pubDate>Wed, 11 Jun 2008 01:54:33 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-linux/nullref-problem/m-p/5113183#M91787</guid>
      <dc:creator>std::__nullref problem?</dc:creator>
      <dc:date>2008-06-11T01:54:33Z</dc:date>
    </item>
    <item>
      <title>Re: __nullref problem?</title>
      <link>https://community.hpe.com/t5/operating-system-linux/nullref-problem/m-p/5113184#M91788</link>
      <description>One more information is, we are using â  Wl,-B,symbolic this option. Some where in the document we have come across that it does not expose the global data to shared libraries. We feel it may be causing the problem. So is there any side effect in removing the -B, Symbolic option.&lt;BR /&gt;&lt;BR /&gt;Thanks a lot in advance for all your help.</description>
      <pubDate>Wed, 11 Jun 2008 02:28:27 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-linux/nullref-problem/m-p/5113184#M91788</guid>
      <dc:creator>std::__nullref problem?</dc:creator>
      <dc:date>2008-06-11T02:28:27Z</dc:date>
    </item>
    <item>
      <title>Re: __nullref problem?</title>
      <link>https://community.hpe.com/t5/operating-system-linux/nullref-problem/m-p/5113185#M91789</link>
      <description>&amp;gt;We are using aCC version. A.06.15&lt;BR /&gt;&lt;BR /&gt;This version of aCC6 can't have that problem.&lt;BR /&gt;&lt;BR /&gt;&amp;gt;How can I verify that there are multiple nullref definition across libraries?&lt;BR /&gt;nm -p libmda_support.so | grep nullref | c++filt&lt;BR /&gt;&lt;BR /&gt;Well:&lt;BR /&gt;nm -pxAN libmda_support.so ... | fgrep _ZNSbItSt11char_traitsItESaItEE9__nullrefE&lt;BR /&gt;&lt;BR /&gt;&amp;gt;B std::basic_string&lt;UNSIGNED short=""&gt;::__nullref&lt;BR /&gt;&amp;gt;Is the above output say that there are multiple nullref things?&lt;BR /&gt;&lt;BR /&gt;You only have the one for unsigned short.&lt;BR /&gt;&lt;BR /&gt;&amp;gt;is that above confirm that the problem is with multiple __nullref or is it something expected?&lt;BR /&gt;&lt;BR /&gt;To have multiples, you need to look to other shlibs.&lt;BR /&gt;&lt;BR /&gt;&amp;gt;when I said single threaded I meant was there was only one thread running&lt;BR /&gt;&lt;BR /&gt;That doesn't matter.&lt;BR /&gt;&lt;BR /&gt;&amp;gt;we are using -Wl,-B,symbolic this option.&lt;BR /&gt;&lt;BR /&gt;You must NEVER use this option with C++!!&lt;BR /&gt;This creates multiple copies!&lt;BR /&gt;&lt;BR /&gt;&amp;gt;We feel it may be causing the problem. So is there any side effect in removing the -B, Symbolic option.&lt;BR /&gt;&lt;BR /&gt;Yes, this is probably the cause.&lt;BR /&gt;What side effect?  Why was this added in the first place?&lt;/UNSIGNED&gt;</description>
      <pubDate>Wed, 11 Jun 2008 02:41:28 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-linux/nullref-problem/m-p/5113185#M91789</guid>
      <dc:creator>Dennis Handly</dc:creator>
      <dc:date>2008-06-11T02:41:28Z</dc:date>
    </item>
    <item>
      <title>Re: __nullref problem?</title>
      <link>https://community.hpe.com/t5/operating-system-linux/nullref-problem/m-p/5113186#M91790</link>
      <description>Thanks a lot. Looks like removing Symbolic option has solved the problem. Anyway we shall confirm and close this thread.&lt;BR /&gt;&lt;BR /&gt;Thanks,&lt;BR /&gt;Prasanna.</description>
      <pubDate>Wed, 11 Jun 2008 03:39:09 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-linux/nullref-problem/m-p/5113186#M91790</guid>
      <dc:creator>std::__nullref problem?</dc:creator>
      <dc:date>2008-06-11T03:39:09Z</dc:date>
    </item>
    <item>
      <title>Re: __nullref problem?</title>
      <link>https://community.hpe.com/t5/operating-system-linux/nullref-problem/m-p/5113187#M91791</link>
      <description>We have wrongly used the -Wl -B Symbolic while building the C++ application as well. It should not have been. On removing that it is working as desired. Thanks to Dennis.</description>
      <pubDate>Thu, 12 Jun 2008 07:13:53 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-linux/nullref-problem/m-p/5113187#M91791</guid>
      <dc:creator>std::__nullref problem?</dc:creator>
      <dc:date>2008-06-12T07:13:53Z</dc:date>
    </item>
  </channel>
</rss>

