Boost C++ Libraries: Ticket #2771: Serialization documentation should make portability issues more obvious https://svn.boost.org/trac10/ticket/2771 <p> Specifically, the following do not use portable features: </p> <ul><li>BOOST_CLASS_EXPORT </li><li>base_object </li></ul><p> Perhaps a section in the "Special Considerations" part of the manual which says not to use these features in portable code. </p> <p> Yes, I knew this but did it anyway :-) </p> en-us Boost C++ Libraries /htdocs/site/boost.png https://svn.boost.org/trac10/ticket/2771 Trac 1.4.3 boost@… Tue, 17 Feb 2009 19:07:38 GMT <link>https://svn.boost.org/trac10/ticket/2771#comment:1 </link> <guid isPermaLink="false">https://svn.boost.org/trac10/ticket/2771#comment:1</guid> <description> <p> Essentially anything using the new singleton is not portable so as long as the serialization library provides a portable way to implement the same "automatic registration" </p> </description> <category>Ticket</category> </item> <item> <dc:creator>anonymous</dc:creator> <pubDate>Tue, 17 Feb 2009 19:13:29 GMT</pubDate> <title/> <link>https://svn.boost.org/trac10/ticket/2771#comment:2 </link> <guid isPermaLink="false">https://svn.boost.org/trac10/ticket/2771#comment:2</guid> <description> <p> Replying to <a class="ticket" href="https://svn.boost.org/trac10/ticket/2771#comment:1" title="Comment 1">boost@taggedtype.net</a>: </p> <blockquote class="citation"> <p> Essentially anything using the new singleton is not portable so as long as the serialization library provides a portable way to implement the same "automatic registration" </p> </blockquote> <p> Finishing that sentence: as long as the serialization library provides a portable way to implement the same "automatic registration", it is still possible to write portable code. It just has to be more verbose. </p> </description> <category>Ticket</category> </item> <item> <dc:creator>Robert Ramey</dc:creator> <pubDate>Thu, 19 Feb 2009 16:29:14 GMT</pubDate> <title>status changed; resolution set https://svn.boost.org/trac10/ticket/2771#comment:3 https://svn.boost.org/trac10/ticket/2771#comment:3 <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> "Essentially anything using the new singleton is not portable so as long as the serialization library provides a portable way to implement the same "automatic registration" " </p> <p> I think this is incorrect. I believe that the lock free singleton included in boost serialization IS portable. What is not guaranteed to be portable is the "automatic" code instantiation implemented by BOOST_CLASS_EXPORT. This currently fails on the SUNCC compiler (though it might be fixed by now) and VaCPP compiler (IBM - they have been advised of this and have shown interest in addressing it.) </p> <p> Note that I've added a new section to the manual - "Tips and Tricks". This is to be used for those who want to add their own special bits of knowledge which other users may find useful. Its a constructive way to vent one's frustration. Submit proposals for new tips - in paste ready form - as a new TRAK item. </p> <p> Robert Ramey </p> <p> BTW - I think the SunCC failures have been showing up on the trunk test for years and no one ever complained. Perhaps one who is interested in the issue might work to get the compilers that they are concerned about added to the "release" platforms and raise issues when they first occur. </p> <p> RR </p> Ticket boost@… Thu, 19 Feb 2009 16:40:27 GMT <link>https://svn.boost.org/trac10/ticket/2771#comment:4 </link> <guid isPermaLink="false">https://svn.boost.org/trac10/ticket/2771#comment:4</guid> <description> <p> Robert, </p> <p> I don't know how you can say for certain that it is portable. There is no reference to any standardese in the code. </p> <p> I agree, BOOST_CLASS_EXPORT is not portable. But if BOOST_CLASS_EXPORT is not portable, then the portability of the singleton almost doesn't matter! </p> <p> I will happily send you my tips and tricks. I have a bunch. </p> <p> By the way, if you are interested in the macro I wrote which roughly guarantees a function will be called before main, let me know. It falls back to the singleton above if the macro is not specialized for the current platform/compiler. It would raise the abstraction level, imo. </p> </description> <category>Ticket</category> </item> <item> <dc:creator>Daniel James</dc:creator> <pubDate>Sat, 14 Mar 2009 11:42:43 GMT</pubDate> <title/> <link>https://svn.boost.org/trac10/ticket/2771#comment:5 </link> <guid isPermaLink="false">https://svn.boost.org/trac10/ticket/2771#comment:5</guid> <description> <p> (In <a class="changeset" href="https://svn.boost.org/trac10/changeset/51774" title="Merge most of the recent changes to quickbook and boostbook. Left out ...">[51774]</a>) Merge most of the recent changes to quickbook and boostbook. </p> <p> Left out doxygen changes: <a class="changeset" href="https://svn.boost.org/trac10/changeset/51323" title="More information in error messages in the doxygen2boostbook script.">[51323]</a>,<a class="changeset" href="https://svn.boost.org/trac10/changeset/51324" title="Deal with top level enums from doxygen.">[51324]</a>,<a class="changeset" href="https://svn.boost.org/trac10/changeset/51680" title="Try to support inbodydescription in doxygen xml.">[51680]</a> And a quickbook change which might be a breaking change: <a class="changeset" href="https://svn.boost.org/trac10/changeset/51403" title="Accept space between 'section:' and the section id. Ref #2712.">[51403]</a> </p> <p> Fixes <a class="closed ticket" href="https://svn.boost.org/trac10/ticket/1977" title="#1977: Patches: headername does not allow the text to be different from the path to ... (closed: fixed)">#1977</a>, <a class="closed ticket" href="https://svn.boost.org/trac10/ticket/1170" title="#1170: Bugs: Emit Warnings instead of # symbols in the syntax highlighter (closed: fixed)">#1170</a>, <a class="closed ticket" href="https://svn.boost.org/trac10/ticket/1213" title="#1213: Feature Requests: Specify that [#named_anchors] are global (closed: fixed)">#1213</a>, <a class="closed ticket" href="https://svn.boost.org/trac10/ticket/2701" title="#2701: Feature Requests: Quickbook docs on internal link may be misleading (closed: fixed)">#2701</a>. Refs <a class="closed ticket" href="https://svn.boost.org/trac10/ticket/2153" title="#2153: Bugs: [boostbook] Entities methodname, classname, macroname, headername, ... (closed: fixed)">#2153</a>, <a class="closed ticket" href="https://svn.boost.org/trac10/ticket/2771" title="#2771: Bugs: Serialization documentation should make portability issues more obvious (closed: fixed)">#2771</a>. </p> <p> Merged revisions 51268-51269,51319-51321,51370-51372,51388-51389,51401-51402,51405-51406,51508,51647,51696 via svnmerge from <a class="ext-link" href="https://svn.boost.org/svn/boost/trunk"><span class="icon">​</span>https://svn.boost.org/svn/boost/trunk</a> </p> <p> ........ </p> <blockquote> <p> <a class="changeset" href="https://svn.boost.org/trac10/changeset/51268" title="Add default path for callouts.">r51268</a> | johnmaddock | 2009-02-16 10:39:18 +0000 (Mon, 16 Feb 2009) | 1 line </p> </blockquote> <p> </p> <blockquote> <p> Add default path for callouts. </p> </blockquote> <p> ........ </p> <blockquote> <p> <a class="changeset" href="https://svn.boost.org/trac10/changeset/51269" title="Add preliminary HTMLHelp support.">r51269</a> | johnmaddock | 2009-02-16 10:40:26 +0000 (Mon, 16 Feb 2009) | 1 line </p> </blockquote> <p> </p> <blockquote> <p> Add preliminary HTMLHelp support. </p> </blockquote> <p> ........ </p> <blockquote> <p> <a class="changeset" href="https://svn.boost.org/trac10/changeset/51319" title="Remove long out of date warning.">r51319</a> | danieljames | 2009-02-18 21:22:37 +0000 (Wed, 18 Feb 2009) | 1 line </p> </blockquote> <p> </p> <blockquote> <p> Remove long out of date warning. </p> </blockquote> <p> ........ </p> <blockquote> <p> <a class="changeset" href="https://svn.boost.org/trac10/changeset/51320" title="Write out the quickbook options when the file is missing.">r51320</a> | danieljames | 2009-02-18 21:23:13 +0000 (Wed, 18 Feb 2009) | 1 line </p> </blockquote> <p> </p> <blockquote> <p> Write out the quickbook options when the file is missing. </p> </blockquote> <p> ........ </p> <blockquote> <p> <a class="changeset" href="https://svn.boost.org/trac10/changeset/51321" title="Add default path for callouts to xhtml.">r51321</a> | danieljames | 2009-02-18 21:23:35 +0000 (Wed, 18 Feb 2009) | 1 line </p> </blockquote> <p> </p> <blockquote> <p> Add default path for callouts to xhtml. </p> </blockquote> <p> ........ </p> <blockquote> <p> <a class="changeset" href="https://svn.boost.org/trac10/changeset/51370" title="Regenerate boostbook reference documentation and merge with existing ...">r51370</a> | danieljames | 2009-02-21 18:50:00 +0000 (Sat, 21 Feb 2009) | 4 lines </p> </blockquote> <p> </p> <blockquote> <p> Regenerate boostbook reference documentation and merge with existing documentation. </p> </blockquote> <p> </p> <blockquote> <p> Ref <a class="closed ticket" href="https://svn.boost.org/trac10/ticket/2153" title="#2153: Bugs: [boostbook] Entities methodname, classname, macroname, headername, ... (closed: fixed)">#2153</a> </p> </blockquote> <p> ........ </p> <blockquote> <p> <a class="changeset" href="https://svn.boost.org/trac10/changeset/51371" title="Fix links in standalone boostbook documentation.">r51371</a> | danieljames | 2009-02-21 18:50:14 +0000 (Sat, 21 Feb 2009) | 1 line </p> </blockquote> <p> </p> <blockquote> <p> Fix links in standalone boostbook documentation. </p> </blockquote> <p> ........ </p> <blockquote> <p> <a class="changeset" href="https://svn.boost.org/trac10/changeset/51372" title="Change license in boostbook docs to boost license. Douglas Gregor is ...">r51372</a> | danieljames | 2009-02-21 18:50:25 +0000 (Sat, 21 Feb 2009) | 3 lines </p> </blockquote> <p> </p> <blockquote> <p> Change license in boostbook docs to boost license. </p> </blockquote> <p> </p> <blockquote> <p> Douglas Gregor is listed in the blanket permissions file. </p> </blockquote> <p> ........ </p> <blockquote> <p> <a class="changeset" href="https://svn.boost.org/trac10/changeset/51388" title="This DTD isn't stable, so I'm calling it a 'development' version. ...">r51388</a> | danieljames | 2009-02-22 11:54:01 +0000 (Sun, 22 Feb 2009) | 1 line </p> </blockquote> <p> </p> <blockquote> <p> This DTD isn't stable, so I'm calling it a 'development' version. Which is probably wrong, but there you go. </p> </blockquote> <p> ........ </p> <blockquote> <p> <a class="changeset" href="https://svn.boost.org/trac10/changeset/51389" title="Support the alt tag in headername and macroname. Also make headername ...">r51389</a> | danieljames | 2009-02-22 11:54:18 +0000 (Sun, 22 Feb 2009) | 2 lines </p> </blockquote> <p> </p> <blockquote> <p> Support the alt tag in headername and macroname. Also make headername and macroname valid. Refs <a class="closed ticket" href="https://svn.boost.org/trac10/ticket/1977" title="#1977: Patches: headername does not allow the text to be different from the path to ... (closed: fixed)">#1977</a> </p> </blockquote> <p> ........ </p> <blockquote> <p> <a class="changeset" href="https://svn.boost.org/trac10/changeset/51401" title="Add a purpose for macroname, headername, enumname, globalname. Ref ...">r51401</a> | danieljames | 2009-02-22 23:47:51 +0000 (Sun, 22 Feb 2009) | 8 lines </p> </blockquote> <p> </p> <blockquote> <p> Add a purpose for macroname, headername, enumname, globalname. </p> </blockquote> <p> </p> <blockquote> <p> Ref <a class="closed ticket" href="https://svn.boost.org/trac10/ticket/2153" title="#2153: Bugs: [boostbook] Entities methodname, classname, macroname, headername, ... (closed: fixed)">#2153</a>: There's still no documentation for methodname and classname. These are actually defined in the docbook DTD for a different purpose so I'm not sure how to deal with them. </p> </blockquote> <p> </p> <blockquote> <p> <a class="ext-link" href="http://www.docbook.org/tdg/en/html/methodname.html"><span class="icon">​</span>http://www.docbook.org/tdg/en/html/methodname.html</a> <a class="ext-link" href="http://www.docbook.org/tdg/en/html/classname.html"><span class="icon">​</span>http://www.docbook.org/tdg/en/html/classname.html</a> </p> </blockquote> <p> ........ </p> <blockquote> <p> <a class="changeset" href="https://svn.boost.org/trac10/changeset/51402" title="Generate slightly more valid boostbook. For document types other than ...">r51402</a> | danieljames | 2009-02-22 23:48:37 +0000 (Sun, 22 Feb 2009) | 7 lines </p> </blockquote> <p> </p> <blockquote> <p> Generate slightly more valid boostbook. </p> </blockquote> <p> </p> <blockquote> <p> For document types other than library: </p> </blockquote> <ul><li>Don't generate name or dirname for document types. </li><li>Put title before document info. </li></ul><p> </p> <blockquote> <p> Ref <a class="closed ticket" href="https://svn.boost.org/trac10/ticket/2771" title="#2771: Bugs: Serialization documentation should make portability issues more obvious (closed: fixed)">#2771</a> </p> </blockquote> <p> ........ </p> <blockquote> <p> <a class="changeset" href="https://svn.boost.org/trac10/changeset/51405" title="Print out unexpected characters as errors. Ref #1170">r51405</a> | danieljames | 2009-02-22 23:49:21 +0000 (Sun, 22 Feb 2009) | 3 lines </p> </blockquote> <p> </p> <blockquote> <p> Print out unexpected characters as errors. </p> </blockquote> <p> </p> <blockquote> <p> Ref <a class="closed ticket" href="https://svn.boost.org/trac10/ticket/1170" title="#1170: Bugs: Emit Warnings instead of # symbols in the syntax highlighter (closed: fixed)">#1170</a> </p> </blockquote> <p> ........ </p> <blockquote> <p> <a class="changeset" href="https://svn.boost.org/trac10/changeset/51406" title="Better handling of errors without line numbers.">r51406</a> | danieljames | 2009-02-22 23:49:36 +0000 (Sun, 22 Feb 2009) | 1 line </p> </blockquote> <p> </p> <blockquote> <p> Better handling of errors without line numbers. </p> </blockquote> <p> ........ </p> <blockquote> <p> <a class="changeset" href="https://svn.boost.org/trac10/changeset/51508" title="Try to make anchor and link usage a little clearer. Refs #1213, #2701">r51508</a> | danieljames | 2009-03-01 14:16:44 +0000 (Sun, 01 Mar 2009) | 3 lines </p> </blockquote> <p> </p> <blockquote> <p> Try to make anchor and link usage a little clearer. </p> </blockquote> <p> </p> <blockquote> <p> Refs <a class="closed ticket" href="https://svn.boost.org/trac10/ticket/1213" title="#1213: Feature Requests: Specify that [#named_anchors] are global (closed: fixed)">#1213</a>, <a class="closed ticket" href="https://svn.boost.org/trac10/ticket/2701" title="#2701: Feature Requests: Quickbook docs on internal link may be misleading (closed: fixed)">#2701</a> </p> </blockquote> <p> ........ </p> <blockquote> <p> <a class="changeset" href="https://svn.boost.org/trac10/changeset/51647" title="Display text purposes in function reference.">r51647</a> | danieljames | 2009-03-08 09:45:51 +0000 (Sun, 08 Mar 2009) | 1 line </p> </blockquote> <p> </p> <blockquote> <p> Display text purposes in function reference. </p> </blockquote> <p> ........ </p> <blockquote> <p> <a class="changeset" href="https://svn.boost.org/trac10/changeset/51696" title="Set margins to 0pt so they line up with surrounding text rather than ...">r51696</a> | johnmaddock | 2009-03-11 10:22:42 +0000 (Wed, 11 Mar 2009) | 1 line </p> </blockquote> <p> </p> <blockquote> <p> Set margins to 0pt so they line up with surrounding text rather than appearing outside it - prevents margins from overlapping other content. </p> </blockquote> <p> ........ </p> </description> <category>Ticket</category> </item> <item> <dc:creator>Daniel James</dc:creator> <pubDate>Sat, 14 Mar 2009 11:58:39 GMT</pubDate> <title/> <link>https://svn.boost.org/trac10/ticket/2771#comment:6 </link> <guid isPermaLink="false">https://svn.boost.org/trac10/ticket/2771#comment:6</guid> <description> <p> Replying to <a class="ticket" href="https://svn.boost.org/trac10/ticket/2771#comment:5" title="Comment 5">danieljames</a>: </p> <p> Sorry about that I referenced the wrong bug. </p> </description> <category>Ticket</category> </item> </channel> </rss>