Boost C++ Libraries: Ticket #1711: Boost Serialization export facility broken on gcc 4.1, 4.2 https://svn.boost.org/trac10/ticket/1711 <p> The test libs/serialization/test/test_exported.cpp fails on these compilers. However, if you reorder export.hpp to be after the inclusion of the archive headers, it works. Changing base_object to void_cast_register doesn't help either (since one is syntactic sugar for the other) </p> <p> This shouldn't be the case as the header-ordering requirement is no longer there but it seems that the correct code is not being instantiated on this compiler. I cannot figure out why. </p> <p> Please see this thread for further information: <a class="ext-link" href="http://article.gmane.org/gmane.comp.lib.boost.devel/172421"><span class="icon">​</span>http://article.gmane.org/gmane.comp.lib.boost.devel/172421</a> </p> <p> If you need me to try any changes, let me know. I think this should be fixed for 1.35 because it essentially means that a very important part of the serialization lib does not work. </p> <p> If we suggest the header-ordering workaround, I would really stress that we understand *why* this is happening. </p> en-us Boost C++ Libraries /htdocs/site/boost.png https://svn.boost.org/trac10/ticket/1711 Trac 1.4.3 Sohail Somani Mon, 24 Mar 2008 18:25:32 GMT <link>https://svn.boost.org/trac10/ticket/1711#comment:1 </link> <guid isPermaLink="false">https://svn.boost.org/trac10/ticket/1711#comment:1</guid> <description> <p> I believe it fails on RC2 as well. </p> </description> <category>Ticket</category> </item> <item> <dc:creator>Sohail Somani</dc:creator> <pubDate>Tue, 25 Mar 2008 05:55:56 GMT</pubDate> <title>attachment set https://svn.boost.org/trac10/ticket/1711 https://svn.boost.org/trac10/ticket/1711 <ul> <li><strong>attachment</strong> → <span class="trac-field-new">weird.patch</span> </li> </ul> <p> This patch shows which instantiation is causing the problem. </p> Ticket Sohail Somani <boost-trac@…> Wed, 26 Mar 2008 18:03:06 GMT <link>https://svn.boost.org/trac10/ticket/1711#comment:2 </link> <guid isPermaLink="false">https://svn.boost.org/trac10/ticket/1711#comment:2</guid> <description> <p> Adding a comment using ID so I get cc'ed hopefully. </p> </description> <category>Ticket</category> </item> <item> <dc:creator>Dave Abrahams</dc:creator> <pubDate>Fri, 28 Mar 2008 20:13:19 GMT</pubDate> <title/> <link>https://svn.boost.org/trac10/ticket/1711#comment:3 </link> <guid isPermaLink="false">https://svn.boost.org/trac10/ticket/1711#comment:3</guid> <description> <p> <code>bjam gcc test_exported_text_archive</code> is passing for me in the Boost trunk with gcc 4.1.3 on ubuntu 7.10 </p> <p> Which test exactly is failing, please? </p> </description> <category>Ticket</category> </item> <item> <author>Sohail Somani <boost-trac@…></author> <pubDate>Fri, 28 Mar 2008 20:18:49 GMT</pubDate> <title/> <link>https://svn.boost.org/trac10/ticket/1711#comment:4 </link> <guid isPermaLink="false">https://svn.boost.org/trac10/ticket/1711#comment:4</guid> <description> <p> The reason the test is passing now is because Robert changed the header order to see if it would fix other failures. </p> <p> See <a class="ext-link" href="http://svn.boost.org/trac/boost/changeset/43806"><span class="icon">​</span>http://svn.boost.org/trac/boost/changeset/43806</a> </p> </description> <category>Ticket</category> </item> <item> <author>Sohail Somani <boost-trac@…></author> <pubDate>Fri, 28 Mar 2008 20:19:15 GMT</pubDate> <title/> <link>https://svn.boost.org/trac10/ticket/1711#comment:5 </link> <guid isPermaLink="false">https://svn.boost.org/trac10/ticket/1711#comment:5</guid> <description> <p> Also, test_exported_text_archive was the failing test. </p> </description> <category>Ticket</category> </item> <item> <dc:creator>Dave Abrahams</dc:creator> <pubDate>Fri, 28 Mar 2008 21:13:55 GMT</pubDate> <title/> <link>https://svn.boost.org/trac10/ticket/1711#comment:6 </link> <guid isPermaLink="false">https://svn.boost.org/trac10/ticket/1711#comment:6</guid> <description> <p> OK, let me have a quick look at this. If it's a hard problem it's very unlikely I'll have time for a fix that would be accepted before 1.35 goes out, if a fix is even possible. If you're still of the opinion that the code shouldn't work on <em>any</em> compiler as written, could you please explain in a little more detail? It's been over a year since I've thought about how this stuff works. </p> <p> Thanks. </p> </description> <category>Ticket</category> </item> <item> <author>Sohail Somani <boost-trac@…></author> <pubDate>Fri, 28 Mar 2008 21:41:46 GMT</pubDate> <title/> <link>https://svn.boost.org/trac10/ticket/1711#comment:7 </link> <guid isPermaLink="false">https://svn.boost.org/trac10/ticket/1711#comment:7</guid> <description> <p> I am not of the opinion that it shouldn't work on any compiler as written. I think it *should* work. </p> <p> If you look at the patch that I've attached, it shows you which definition is affecting the ordering. I feel that it should work but when all the instantiation magic is happening, it is choosing the int overload rather than the Archive overload. </p> </description> <category>Ticket</category> </item> <item> <author>Sohail Somani <boost-trac@…></author> <pubDate>Fri, 28 Mar 2008 21:46:58 GMT</pubDate> <title/> <link>https://svn.boost.org/trac10/ticket/1711#comment:8 </link> <guid isPermaLink="false">https://svn.boost.org/trac10/ticket/1711#comment:8</guid> <description> <p> Replying to <a class="ticket" href="https://svn.boost.org/trac10/ticket/1711#comment:7" title="Comment 7">Sohail Somani &lt;boost-trac@taggedtype.net&gt;</a>: </p> <blockquote class="citation"> <p> I feel that it should work but when all the instantiation magic is happening, it is choosing the int overload rather than the Archive overload. </p> </blockquote> <p> The int overload of instantiate_ptr_serialization, that is. </p> </description> <category>Ticket</category> </item> <item> <author>Sohail Somani <boost-trac@…></author> <pubDate>Fri, 28 Mar 2008 22:18:40 GMT</pubDate> <title/> <link>https://svn.boost.org/trac10/ticket/1711#comment:9 </link> <guid isPermaLink="false">https://svn.boost.org/trac10/ticket/1711#comment:9</guid> <description> <p> Replying to <a class="ticket" href="https://svn.boost.org/trac10/ticket/1711#comment:8" title="Comment 8">Sohail Somani &lt;boost-trac@taggedtype.net&gt;</a>: </p> <blockquote class="citation"> <p> Replying to <a class="ticket" href="https://svn.boost.org/trac10/ticket/1711#comment:7" title="Comment 7">Sohail Somani &lt;boost-trac@taggedtype.net&gt;</a>: </p> <blockquote class="citation"> <p> I feel that it should work but when all the instantiation magic is happening, it is choosing the int overload rather than the Archive overload. </p> </blockquote> <p> The int overload of instantiate_ptr_serialization, that is. </p> </blockquote> <p> This is the case. If you remove the inlined empty definition of instantiate_ptr_serialization, there is a link error referencing the int instantiations. I think it is a g++ bug... </p> </description> <category>Ticket</category> </item> <item> <dc:creator>Dave Abrahams</dc:creator> <pubDate>Fri, 28 Mar 2008 23:10:50 GMT</pubDate> <title/> <link>https://svn.boost.org/trac10/ticket/1711#comment:10 </link> <guid isPermaLink="false">https://svn.boost.org/trac10/ticket/1711#comment:10</guid> <description> <p> Replying to <a class="ticket" href="https://svn.boost.org/trac10/ticket/1711#comment:9" title="Comment 9">Sohail Somani &lt;boost-trac@taggedtype.net&gt;</a>: </p> <blockquote class="citation"> <p> Replying to <a class="ticket" href="https://svn.boost.org/trac10/ticket/1711#comment:8" title="Comment 8">Sohail Somani &lt;boost-trac@taggedtype.net&gt;</a>: </p> <blockquote class="citation"> <p> Replying to <a class="ticket" href="https://svn.boost.org/trac10/ticket/1711#comment:7" title="Comment 7">Sohail Somani &lt;boost-trac@taggedtype.net&gt;</a>: </p> <blockquote class="citation"> <p> I feel that it should work but when all the instantiation magic is happening, it is choosing the int overload rather than the Archive overload. </p> </blockquote> <p> The int overload of instantiate_ptr_serialization, that is. </p> </blockquote> <p> This is the case. If you remove the inlined empty definition of instantiate_ptr_serialization, there is a link error referencing the int instantiations. I think it is a g++ bug... </p> </blockquote> <p> That part at least isn't a surprise. As the comment says, that version of the function is actually called. </p> </description> <category>Ticket</category> </item> <item> <author>Sohail Somani <boost-trac@…></author> <pubDate>Fri, 28 Mar 2008 23:23:29 GMT</pubDate> <title/> <link>https://svn.boost.org/trac10/ticket/1711#comment:11 </link> <guid isPermaLink="false">https://svn.boost.org/trac10/ticket/1711#comment:11</guid> <description> <p> Oops... Is the int overload supposed to be called from guid_initializer&lt;T&gt;::export_guid? </p> <p> The call to instantiate_ptr_serialization is a dependent lookup isn't it? </p> </description> <category>Ticket</category> </item> <item> <author>Sohail Somani <boost-trac@…></author> <pubDate>Fri, 28 Mar 2008 23:50:56 GMT</pubDate> <title/> <link>https://svn.boost.org/trac10/ticket/1711#comment:12 </link> <guid isPermaLink="false">https://svn.boost.org/trac10/ticket/1711#comment:12</guid> <description> <p> Uh... Is this version of g++ hopelessly broken? </p> <p> <em> From the standard (section 14.6.7) #include &lt;iostream&gt; </em></p> <p> using namespace std; </p> <p> void f(char){cout &lt;&lt; "f(char)" &lt;&lt; endl;} template&lt;class T&gt; void g(T t) { </p> <blockquote> <p> f(1); <em> f(char) </em></p> <blockquote> <p> <em> dependent </em></p> </blockquote> <p> f(T(1)); </p> <blockquote> <p> <em> dependent </em></p> </blockquote> <p> f(t); </p> </blockquote> <p> } </p> <p> void f(int){cout &lt;&lt; "f(int)" &lt;&lt; endl;} </p> <p> int main() { </p> <blockquote> <p> <em> will cause one call of f(char) followed </em></p> </blockquote> <blockquote> <p> g(2); </p> <blockquote> <p> <em> by two calls of f(int) </em> will cause three calls of f(char) </p> </blockquote> <p> g('a'); </p> </blockquote> <p> } </p> </description> <category>Ticket</category> </item> <item> <author>Sohail Somani <boost-trac@…></author> <pubDate>Fri, 28 Mar 2008 23:55:08 GMT</pubDate> <title/> <link>https://svn.boost.org/trac10/ticket/1711#comment:13 </link> <guid isPermaLink="false">https://svn.boost.org/trac10/ticket/1711#comment:13</guid> <description> <p> Sorry my submit trigger finger went too early. Wow this is pretty messed up... </p> <div class="wiki-code"><div class="code"><pre><span class="c1">// From the standard (section 14.6.7)</span> <span class="cp">#include</span> <span class="cpf">&lt;iostream&gt;</span><span class="cp"></span> <span class="k">using</span> <span class="k">namespace</span> <span class="n">std</span><span class="p">;</span> <span class="kt">void</span> <span class="nf">f</span><span class="p">(</span><span class="kt">char</span><span class="p">){</span><span class="n">cout</span> <span class="o">&lt;&lt;</span> <span class="s">&quot;f(char)&quot;</span> <span class="o">&lt;&lt;</span> <span class="n">endl</span><span class="p">;}</span> <span class="k">template</span><span class="o">&lt;</span><span class="k">class</span> <span class="nc">T</span><span class="o">&gt;</span> <span class="kt">void</span> <span class="n">g</span><span class="p">(</span><span class="n">T</span> <span class="n">t</span><span class="p">)</span> <span class="p">{</span> <span class="n">f</span><span class="p">(</span><span class="mi">1</span><span class="p">);</span> <span class="c1">// f(char)</span> <span class="n">f</span><span class="p">(</span><span class="n">T</span><span class="p">(</span><span class="mi">1</span><span class="p">));</span> <span class="c1">// dependent</span> <span class="c1">// dependent</span> <span class="n">f</span><span class="p">(</span><span class="n">t</span><span class="p">);</span> <span class="p">}</span> <span class="kt">void</span> <span class="n">f</span><span class="p">(</span><span class="kt">int</span><span class="p">){</span><span class="n">cout</span> <span class="o">&lt;&lt;</span> <span class="s">&quot;f(int)&quot;</span> <span class="o">&lt;&lt;</span> <span class="n">endl</span><span class="p">;}</span> <span class="kt">int</span> <span class="n">main</span><span class="p">()</span> <span class="p">{</span> <span class="c1">// will cause one call of f(char) followed</span> <span class="n">g</span><span class="p">(</span><span class="mi">2</span><span class="p">);</span> <span class="c1">// by two calls of f(int)</span> <span class="c1">// will cause three calls of f(char)</span> <span class="n">g</span><span class="p">(</span><span class="sc">&#39;a&#39;</span><span class="p">);</span> <span class="p">}</span> </pre></div></div><pre class="wiki">$ g++ /tmp/cpp.cpp -o /tmp/wtf_broken $ /tmp/wtf_broken f(char) f(char) f(char) f(char) f(char) f(char) $ </pre> </description> <category>Ticket</category> </item> <item> <author>Sohail Somani <boost-trac@…></author> <pubDate>Sat, 29 Mar 2008 00:04:13 GMT</pubDate> <title/> <link>https://svn.boost.org/trac10/ticket/1711#comment:14 </link> <guid isPermaLink="false">https://svn.boost.org/trac10/ticket/1711#comment:14</guid> <description> <p> And of course it is 14.6.9 not 14.6.7. </p> </description> <category>Ticket</category> </item> <item> <author>Sohail Somani <boost-trac@…></author> <pubDate>Sat, 29 Mar 2008 00:28:25 GMT</pubDate> <title/> <link>https://svn.boost.org/trac10/ticket/1711#comment:15 </link> <guid isPermaLink="false">https://svn.boost.org/trac10/ticket/1711#comment:15</guid> <description> <p> <a class="ext-link" href="http://gcc.gnu.org/bugzilla/show_bug.cgi?id=2922"><span class="icon">​</span>http://gcc.gnu.org/bugzilla/show_bug.cgi?id=2922</a> </p> </description> <category>Ticket</category> </item> <item> <author>Sohail Somani <boost-trac@…></author> <pubDate>Sat, 29 Mar 2008 02:47:29 GMT</pubDate> <title>attachment set https://svn.boost.org/trac10/ticket/1711 https://svn.boost.org/trac10/ticket/1711 <ul> <li><strong>attachment</strong> → <span class="trac-field-new">header_ordering_fix.patch</span> </li> </ul> <p> Here is a fix which forces dependent name lookup and uses ADL to instantiate the appropriate classes. I am very doubtful that this will work on any other compiler since I haven't tried! </p> Ticket Sohail Somani <boost-trac@…> Sat, 29 Mar 2008 03:01:37 GMT attachment set https://svn.boost.org/trac10/ticket/1711 https://svn.boost.org/trac10/ticket/1711 <ul> <li><strong>attachment</strong> → <span class="trac-field-new">header_ordering_fix.2.patch</span> </li> </ul> <p> Doesn't use ADL. Don't know what I was thinking. Uses enable_if to instantiate the right stuff. </p> Ticket Sohail Somani <boost-trac@…> Sat, 29 Mar 2008 04:07:52 GMT <link>https://svn.boost.org/trac10/ticket/1711#comment:16 </link> <guid isPermaLink="false">https://svn.boost.org/trac10/ticket/1711#comment:16</guid> <description> <p> The patch doesn't seem to work for a few of the tests :-( Ambiguous overloads and stuff... </p> </description> <category>Ticket</category> </item> <item> <dc:creator>anonymous</dc:creator> <pubDate>Sun, 30 Mar 2008 13:33:00 GMT</pubDate> <title/> <link>https://svn.boost.org/trac10/ticket/1711#comment:17 </link> <guid isPermaLink="false">https://svn.boost.org/trac10/ticket/1711#comment:17</guid> <description> <p> Replying to <a class="ticket" href="https://svn.boost.org/trac10/ticket/1711#comment:11" title="Comment 11">Sohail Somani &lt;boost-trac@taggedtype.net&gt;</a>: </p> <blockquote class="citation"> <p> Oops... Is the int overload supposed to be called from guid_initializer&lt;T&gt;::export_guid? </p> <p> The call to instantiate_ptr_serialization is a dependent lookup isn't it? </p> </blockquote> <p> Yes, and yes. </p> <p> See the comments at [browser:/trunk/boost/archive/detail/register_archive.hpp#L23] and [browser:/trunk/boost/archive/detail/register_archive.hpp#L29]. The problem, AFAICT, is that the 2nd overload there is not actually considered and thus its return type is never instantiated. </p> </description> <category>Ticket</category> </item> <item> <author>Sohail Somani <boost-trac@…></author> <pubDate>Sun, 30 Mar 2008 15:18:47 GMT</pubDate> <title/> <link>https://svn.boost.org/trac10/ticket/1711#comment:18 </link> <guid isPermaLink="false">https://svn.boost.org/trac10/ticket/1711#comment:18</guid> <description> <p> I'm wondering if this is the reason: <a class="ext-link" href="http://anubis.dkuug.dk/jtc1/sc22/wg21/docs/cwg_active.html#197"><span class="icon">​</span>http://anubis.dkuug.dk/jtc1/sc22/wg21/docs/cwg_active.html#197</a> </p> <blockquote> <p> Since 14.6.4.2 temp.dep.candidate says that only Koenig lookup is done from the instantiation context, and since 3.4.2 basic.lookup.koenig says that fundamental types have no associated namespaces, either the example is incorrect (and f(int) will never be called) or the specification in 14.6.4.2 temp.dep.candidate is incorrect. </p> </blockquote> <p> This gcc bug has a discussion about the above issue: <a class="ext-link" href="http://gcc.gnu.org/bugzilla/show_bug.cgi?id=2922"><span class="icon">​</span>http://gcc.gnu.org/bugzilla/show_bug.cgi?id=2922</a> </p> </description> <category>Ticket</category> </item> <item> <dc:creator>Dave Abrahams</dc:creator> <pubDate>Sun, 30 Mar 2008 16:18:04 GMT</pubDate> <title>status changed; resolution set https://svn.boost.org/trac10/ticket/1711#comment:19 https://svn.boost.org/trac10/ticket/1711#comment:19 <ul> <li><strong>status</strong> <span class="trac-field-old">new</span> → <span class="trac-field-new">closed</span> </li> <li><strong>resolution</strong> → <span class="trac-field-new">fixed</span> </li> </ul> <p> (In <a class="changeset" href="https://svn.boost.org/trac10/changeset/43949" title="fixes #1711">[43949]</a>) fixes <a class="closed ticket" href="https://svn.boost.org/trac10/ticket/1711" title="#1711: Bugs: Boost Serialization export facility broken on gcc 4.1, 4.2 (closed: fixed)">#1711</a> </p> Ticket Dave Abrahams Sun, 30 Mar 2008 16:21:15 GMT <link>https://svn.boost.org/trac10/ticket/1711#comment:20 </link> <guid isPermaLink="false">https://svn.boost.org/trac10/ticket/1711#comment:20</guid> <description> <p> Replying to <a class="ticket" href="https://svn.boost.org/trac10/ticket/1711#comment:19" title="Comment 19">dave</a>: </p> <blockquote class="citation"> <p> (In <a class="changeset" href="https://svn.boost.org/trac10/changeset/43949" title="fixes #1711">[43949]</a>) fixes <a class="closed ticket" href="https://svn.boost.org/trac10/ticket/1711" title="#1711: Bugs: Boost Serialization export facility broken on gcc 4.1, 4.2 (closed: fixed)">#1711</a> </p> </blockquote> <p> Thanks for the inspiration, Sohail. in addition to being simpler, I believe this fix to be much, much safer than the attached patch; the chance of breaking another compiler by using it is next to nil. However, without your idea of forcing ADL I'm not sure it would have occurred to me. </p> </description> <category>Ticket</category> </item> <item> <dc:creator>Dave Abrahams</dc:creator> <pubDate>Sun, 30 Mar 2008 16:30:47 GMT</pubDate> <title>status changed; resolution deleted https://svn.boost.org/trac10/ticket/1711#comment:21 https://svn.boost.org/trac10/ticket/1711#comment:21 <ul> <li><strong>status</strong> <span class="trac-field-old">closed</span> → <span class="trac-field-new">reopened</span> </li> <li><strong>resolution</strong> <span class="trac-field-deleted">fixed</span> </li> </ul> Ticket Dave Abrahams Sun, 30 Mar 2008 16:32:07 GMT owner, status changed; cc set https://svn.boost.org/trac10/ticket/1711#comment:22 https://svn.boost.org/trac10/ticket/1711#comment:22 <ul> <li><strong>cc</strong> <span class="trac-author">Robert Ramey</span> added </li> <li><strong>owner</strong> changed from <span class="trac-author">Robert Ramey</span> to <span class="trac-author">Beman Dawes</span> </li> <li><strong>status</strong> <span class="trac-field-old">reopened</span> → <span class="trac-field-new">new</span> </li> </ul> <p> Reopening so Beman and Robert Ramey can decide together whether this is important enough to put in the 1.35 release. </p> Ticket Dave Abrahams Sun, 30 Mar 2008 17:15:11 GMT <link>https://svn.boost.org/trac10/ticket/1711#comment:23 </link> <guid isPermaLink="false">https://svn.boost.org/trac10/ticket/1711#comment:23</guid> <description> <p> Replying to <a class="ticket" href="https://svn.boost.org/trac10/ticket/1711#comment:18" title="Comment 18">Sohail Somani &lt;boost-trac@taggedtype.net&gt;</a>: </p> <blockquote class="citation"> <p> I'm wondering if this is the reason: <a class="ext-link" href="http://anubis.dkuug.dk/jtc1/sc22/wg21/docs/cwg_active.html#197"><span class="icon">​</span>http://anubis.dkuug.dk/jtc1/sc22/wg21/docs/cwg_active.html#197</a> </p> <blockquote> <p> Since 14.6.4.2 temp.dep.candidate says that only Koenig lookup is done from the instantiation context, and since 3.4.2 basic.lookup.koenig says that fundamental types have no associated namespaces, either the example is incorrect (and f(int) will never be called) or the specification in 14.6.4.2 temp.dep.candidate is incorrect. </p> </blockquote> </blockquote> <p> Yes, I think you're right. Not having something in there to force ADL was my mistake. I'm a little surprised that I made it in the first place and also this worked anywhere before I made the patch. I guess my capacity to have issues with ADL is boundless ;-) </p> </description> <category>Ticket</category> </item> <item> <author>Sohail Somani <boost-trac@…></author> <pubDate>Sun, 30 Mar 2008 17:55:17 GMT</pubDate> <title/> <link>https://svn.boost.org/trac10/ticket/1711#comment:24 </link> <guid isPermaLink="false">https://svn.boost.org/trac10/ticket/1711#comment:24</guid> <description> <p> Replying to <a class="ticket" href="https://svn.boost.org/trac10/ticket/1711#comment:21" title="Comment 21">dave</a>: </p> <p> Sometimes you have to be thankful that there is something that so anally standard conforming (g++) and an expert like yourself to fix these issues. Anyway, I'm glad I could be a muse. </p> <p> The previously failing test is now passing. One other thing is that you might want to do is to revert test_exported.cpp to its prior state (where export.hpp came before anything else.) </p> <p> Would be great to have this rolled into a 1.35.0 re-release. </p> <p> *nudge* *nudge* *wink* *wink* </p> <p> :-) </p> </description> <category>Ticket</category> </item> <item> <author>Sohail Somani <boost-trac@…></author> <pubDate>Sun, 30 Mar 2008 18:27:11 GMT</pubDate> <title/> <link>https://svn.boost.org/trac10/ticket/1711#comment:25 </link> <guid isPermaLink="false">https://svn.boost.org/trac10/ticket/1711#comment:25</guid> <description> <p> All tests passing for me on trunk </p> </description> <category>Ticket</category> </item> <item> <dc:creator>Dave Abrahams</dc:creator> <pubDate>Sun, 30 Mar 2008 18:28:50 GMT</pubDate> <title/> <link>https://svn.boost.org/trac10/ticket/1711#comment:26 </link> <guid isPermaLink="false">https://svn.boost.org/trac10/ticket/1711#comment:26</guid> <description> <p> Replying to <a class="ticket" href="https://svn.boost.org/trac10/ticket/1711#comment:24" title="Comment 24">Sohail Somani &lt;boost-trac@taggedtype.net&gt;</a>: </p> <blockquote class="citation"> <p> The previously failing test is now passing. One other thing is that you might want to do is to revert test_exported.cpp to its prior state (where export.hpp came before anything else.) </p> </blockquote> <p> See <a class="changeset" href="https://svn.boost.org/trac10/changeset/43953" title="Undo the header re-ordering workaround now that the actual bug is ...">[43953]</a> </p> </description> <category>Ticket</category> </item> <item> <author>Sohail Somani <boost-trac@…></author> <pubDate>Sun, 30 Mar 2008 20:02:39 GMT</pubDate> <title/> <link>https://svn.boost.org/trac10/ticket/1711#comment:27 </link> <guid isPermaLink="false">https://svn.boost.org/trac10/ticket/1711#comment:27</guid> <description> <p> Replying to <a class="ticket" href="https://svn.boost.org/trac10/ticket/1711#comment:26" title="Comment 26">dave</a>: </p> <blockquote class="citation"> <p> Replying to <a class="ticket" href="https://svn.boost.org/trac10/ticket/1711#comment:24" title="Comment 24">Sohail Somani &lt;boost-trac@taggedtype.net&gt;</a>: </p> <blockquote class="citation"> <p> The previously failing test is now passing. One other thing is that you might want to do is to revert test_exported.cpp to its prior state (where export.hpp came before anything else.) </p> </blockquote> <p> See <a class="changeset" href="https://svn.boost.org/trac10/changeset/43953" title="Undo the header re-ordering workaround now that the actual bug is ...">[43953]</a> </p> </blockquote> <p> Looks good. Thanks for looking into it. </p> </description> <category>Ticket</category> </item> <item> <dc:creator>Robert Ramey</dc:creator> <pubDate>Sun, 07 Sep 2008 04:50:24 GMT</pubDate> <title>status changed; resolution set https://svn.boost.org/trac10/ticket/1711#comment:28 https://svn.boost.org/trac10/ticket/1711#comment:28 <ul> <li><strong>status</strong> <span class="trac-field-old">new</span> → <span class="trac-field-new">closed</span> </li> <li><strong>resolution</strong> → <span class="trac-field-new">fixed</span> </li> </ul> <p> Fixed in 1.36 </p> <p> Robert Ramey </p> Ticket