<div dir="ltr">I found this <b>clang bug</b>�<a href="http://llvm.org/bugs/show_bug.cgi?id=10113">http://llvm.org/bugs/show_bug.cgi?id=10113</a> which seems to be related to the problem.</div><div class="gmail_extra"><br><br> <div class="gmail_quote">2013/10/3 Georg Leidinger <span dir="ltr"><<a href="mailto:georg.leidinger@googlemail.com" target="_blank">georg.leidinger@googlemail.com</a>></span><br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"> <div dir="ltr">It happens only if the library is build with the <b>LLVM 4.2</b> (I am using XCode so it is the Apple LLVM 4.2, I don't know if there is something different from the standard LLVM 4.2). If I choose the <b>LLVM GCC 4.2</b> no errors are reported. Is this a bug in the LLVM compiler?<div> <br></div><div>best</div><div>Georg Leidinger<br><div class="gmail_extra"><br><div class="gmail_quote">2013/10/3 Emil Dotchevski <span dir="ltr"><<a href="mailto:emildotchevski@gmail.com" target="_blank">emildotchevski@gmail.com</a>></span><br> <blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div><div class="h5"><div dir="ltr"><div dir="ltr"><div>On Wed, Oct 2, 2013 at 3:06 PM, Georg Leidinger <span dir="ltr"><<a href="mailto:georg.leidinger@googlemail.com" target="_blank">georg.leidinger@googlemail.com</a>></span> wrote:<br> </div><div class="gmail_extra"> <div class="gmail_quote"><div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div>Hi Emil,</div><div><br></div><div>I was able to figure out some more information about the issue and I could isolate it a little bit more. First it doesn't matter if it is a static or a shared library. Second it is not directly related to the <b>Boost.Exception</b> library but to the template class <b>error_info</b> which is used to create the predefined errinfo_xyz types. It is enough to instantiate the <b>errinfo_api_function</b> type in both doSomething() methods in the both implementation files. I am not so good in templates but I guess that the compiler creates the same symbol in both object files (ClassA.o and ClassB.o) for the type�<b>errinfo_api_function.</b>�I can see this via nm that I have the following line in both object files:</div> <div><br></div><div><i>ClassA.o</i></div><div><i>0000000000059860 s __ZTIN5boost21errinfo_api_function_E</i></div><div><i><br></i></div><div><i>ClassB.o</i></div><div><i>0000000000059870 s __ZTIN5boost21errinfo_api_function_E�</i></div> </div></blockquote><div><br></div></div><div>Instantiating a template in two compilation units should not lead to link errors. That's why I can't understand why this happens.<br></div></div></div></div><div> <br>-- <br>Emil Dotchevski<br> Reverge Studios, Inc.<br><a href="http://www.revergestudios.com/reblog/index.php?n=ReCode" target="_blank">http://www.revergestudios.com/reblog/index.php?n=ReCode</a> </div></div> <br></div></div><div class="im">_______________________________________________<br> Boost-users mailing list<br> <a href="mailto:Boost-users@lists.boost.org" target="_blank">Boost-users@lists.boost.org</a><br> <a href="http://lists.boost.org/mailman/listinfo.cgi/boost-users" target="_blank">http://lists.boost.org/mailman/listinfo.cgi/boost-users</a><br></div></blockquote></div><br></div></div></div> </blockquote></div><br></div>