|
Boost-Commit : |
Subject: [Boost-commit] svn:boost r63713 - in trunk/tools/quickbook: . detail test
From: daniel_james_at_[hidden]
Date: 2010-07-06 19:10:13
Author: danieljames
Date: 2010-07-06 19:10:10 EDT (Tue, 06 Jul 2010)
New Revision: 63713
URL: http://svn.boost.org/trac/boost/changeset/63713
Log:
Backport improved paragraphs from spirit 2 version
Templates are no longer expanded inside paragraphs, although callout
lists still are. Refs #4302.
Text files modified:
trunk/tools/quickbook/block.hpp | 3
trunk/tools/quickbook/detail/actions.cpp | 24 +++++-
trunk/tools/quickbook/detail/actions.hpp | 14 +++
trunk/tools/quickbook/detail/actions_class.cpp | 2
trunk/tools/quickbook/detail/actions_class.hpp | 2
trunk/tools/quickbook/test/callouts.gold | 60 +++++++---------
trunk/tools/quickbook/test/import.gold | 140 +++++++++++++++++++--------------------
trunk/tools/quickbook/test/quickbook-manual.gold | 104 ++++++++++++-----------------
trunk/tools/quickbook/test/template-section.gold | 30 ++++----
trunk/tools/quickbook/test/templates.gold | 20 +----
10 files changed, 195 insertions(+), 204 deletions(-)
Modified: trunk/tools/quickbook/block.hpp
==============================================================================
--- trunk/tools/quickbook/block.hpp (original)
+++ trunk/tools/quickbook/block.hpp 2010-07-06 19:10:10 EDT (Tue, 06 Jul 2010)
@@ -59,7 +59,8 @@
| list [actions.list]
| hr [actions.hr]
| comment >> +eol
- | paragraph [actions.paragraph]
+ | paragraph [actions.inside_paragraph]
+ [actions.write_paragraphs]
| eol
)
;
Modified: trunk/tools/quickbook/detail/actions.cpp
==============================================================================
--- trunk/tools/quickbook/detail/actions.cpp (original)
+++ trunk/tools/quickbook/detail/actions.cpp 2010-07-06 19:10:10 EDT (Tue, 06 Jul 2010)
@@ -67,7 +67,7 @@
out << pre << str << post;
}
- void implicit_paragraph_action::operator()(iterator first, iterator last) const
+ void implicit_paragraph_action::operator()() const
{
std::string str;
phrase.swap(str);
@@ -749,6 +749,7 @@
bool parse_template(
std::string& body
, std::string& result
+ , bool& is_block
, boost::spirit::classic::file_position const& template_pos
, quickbook::actions& actions
)
@@ -764,7 +765,7 @@
std::string::const_iterator iter = body.begin();
while (iter != body.end() && ((*iter == ' ') || (*iter == '\t')))
++iter; // skip spaces and tabs
- bool is_block = (iter != body.end()) && ((*iter == '\r') || (*iter == '\n'));
+ is_block = (iter != body.end()) && ((*iter == '\r') || (*iter == '\n'));
bool r = false;
if (actions.template_escape)
@@ -796,6 +797,7 @@
first.set_position(template_pos);
iterator last(body.end(), body.end());
r = boost::spirit::classic::parse(first, last, block_p).full;
+ actions.inside_paragraph();
actions.out.swap(result);
}
return r;
@@ -827,6 +829,7 @@
BOOST_ASSERT(symbol);
std::string result;
+ bool is_block;
actions.push(); // scope the actions' states
{
// Store the current section level so that we can ensure that
@@ -881,7 +884,7 @@
body.assign(tpl->begin(), tpl->end());
body.reserve(body.size()+2); // reserve 2 more
- if (!parse_template(body, result, template_pos, actions))
+ if (!parse_template(body, result, is_block, template_pos, actions))
{
boost::spirit::classic::file_position const pos = first.get_position();
detail::outerr(pos.file,pos.line)
@@ -909,7 +912,13 @@
}
actions.pop(); // restore the actions' states
- actions.phrase << result; // print it!!!
+ if(is_block) {
+ actions.inside_paragraph();
+ actions.temp_para << result; // print it!!!
+ }
+ else {
+ actions.phrase << result; // print it!!!
+ }
--actions.template_depth;
}
@@ -1644,5 +1653,12 @@
{
phrase.swap(out);
}
+
+ void copy_stream_action::operator()(iterator first, iterator last) const
+ {
+ std::string str;
+ phrase.swap(str);
+ out << str;
+ }
}
Modified: trunk/tools/quickbook/detail/actions.hpp
==============================================================================
--- trunk/tools/quickbook/detail/actions.hpp (original)
+++ trunk/tools/quickbook/detail/actions.hpp 2010-07-06 19:10:10 EDT (Tue, 06 Jul 2010)
@@ -100,7 +100,8 @@
, pre(pre)
, post(post) {}
- void operator()(iterator first, iterator last) const;
+ void operator()() const;
+ void operator()(iterator first, iterator last) const { (*this)(); }
collector& out;
collector& phrase;
@@ -855,6 +856,17 @@
std::string& out;
collector& phrase;
};
+
+ struct copy_stream_action
+ {
+ copy_stream_action(collector& out, collector& phrase)
+ : out(out) , phrase(phrase) {}
+
+ void operator()(iterator first, iterator last) const;
+
+ collector& out;
+ collector& phrase;
+ };
}
#ifdef BOOST_MSVC
Modified: trunk/tools/quickbook/detail/actions_class.cpp
==============================================================================
--- trunk/tools/quickbook/detail/actions_class.cpp (original)
+++ trunk/tools/quickbook/detail/actions_class.cpp 2010-07-06 19:10:10 EDT (Tue, 06 Jul 2010)
@@ -78,8 +78,8 @@
, code(out, phrase, syntax_p)
, code_block(phrase, phrase, syntax_p)
, inline_code(phrase, syntax_p)
- , paragraph(out, phrase, paragraph_pre, paragraph_post)
, inside_paragraph(temp_para, phrase, paragraph_pre, paragraph_post)
+ , write_paragraphs(out, temp_para)
, h(out, phrase, doc_id, section_id, qualified_section_id, section_level)
, h1(out, phrase, doc_id, section_id, qualified_section_id, h1_pre, h1_post)
, h2(out, phrase, doc_id, section_id, qualified_section_id, h2_pre, h2_post)
Modified: trunk/tools/quickbook/detail/actions_class.hpp
==============================================================================
--- trunk/tools/quickbook/detail/actions_class.hpp (original)
+++ trunk/tools/quickbook/detail/actions_class.hpp 2010-07-06 19:10:10 EDT (Tue, 06 Jul 2010)
@@ -113,8 +113,8 @@
code_action code;
code_action code_block;
inline_code_action inline_code;
- implicit_paragraph_action paragraph;
implicit_paragraph_action inside_paragraph;
+ copy_stream_action write_paragraphs;
generic_header_action h;
header_action h1, h2, h3, h4, h5, h6;
markup_action hr;
Modified: trunk/tools/quickbook/test/callouts.gold
==============================================================================
--- trunk/tools/quickbook/test/callouts.gold (original)
+++ trunk/tools/quickbook/test/callouts.gold 2010-07-06 19:10:10 EDT (Tue, 06 Jul 2010)
@@ -9,67 +9,61 @@
Example 1:
</para>
<para>
- <para>
- Now we can define a function that simulates an ordinary six-sided die.
- </para>
- <para>
-
+ Now we can define a function that simulates an ordinary six-sided die.
+ </para>
+ <para>
+
<programlisting><phrase role="keyword">int</phrase> <phrase role="identifier">roll_die</phrase><phrase role="special">()</phrase> <phrase role="special">{</phrase>
<phrase role="identifier">boost</phrase><phrase role="special">::</phrase><phrase role="identifier">uniform_int</phrase><phrase role="special"><></phrase> <phrase role="identifier">dist</phrase><phrase role="special">(</phrase><phrase role="number">1</phrase><phrase role="special">,</phrase> <phrase role="number">6</phrase><phrase role="special">);</phrase> <!--quickbook-escape-prefix--><co id="callout_tests0co" linkends="callout_tests0" /><!--quickbook-escape-postfix-->
<phrase role="special">}</phrase>
</programlisting>
- </para>
- <para>
- <calloutlist><callout arearefs="callout_tests0co" id="callout_tests0"><para> create a uniform_int distribution </para></callout></calloutlist>
- </para>
+ </para>
+ <para>
+ <calloutlist><callout arearefs="callout_tests0co" id="callout_tests0"><para> create a uniform_int distribution </para></callout></calloutlist>
</para>
<para>
Example 2:
</para>
<para>
- <para>
-
+
<programlisting><phrase role="keyword">int</phrase> <phrase role="identifier">roll_die</phrase><phrase role="special">()</phrase> <phrase role="special">{</phrase>
<!--quickbook-escape-prefix--><co id="callout_tests1co" linkends="callout_tests1" /><!--quickbook-escape-postfix--><phrase role="identifier">boost</phrase><phrase role="special">::</phrase><phrase role="identifier">variate_generator</phrase><phrase role="special"><</phrase><phrase role="identifier">boost</phrase><phrase role="special">::</phrase><phrase role="identifier">mt19937</phrase><phrase role="special">&,</phrase> <phrase role="identifier">boost</phrase><phrase role="special">::</phrase><phrase role="identifier">uniform_int</phrase><phrase role="special"><></phrase> <phrase role="special">></phrase> <phrase role="identifier">die</phrase><phrase role="special">(</phrase><phrase role="identifier">gen</phrase><phrase role="special">,</phrase> <phrase role="identifier">dist</phrase><phrase role="special">);</phrase>
<phrase role="special">}</phrase>
</programlisting>
- </para>
- <para>
- <calloutlist><callout arearefs="callout_tests1co" id="callout_tests1"><para>
- </para>
- <important>
- <para>
- test
- </para>
- </important>
+ </para>
+ <para>
+ <calloutlist><callout arearefs="callout_tests1co" id="callout_tests1"><para>
+ </para>
+ <important>
<para>
- </para></callout></calloutlist>
+ test
</para>
+ </important>
+ <para>
+ </para></callout></calloutlist>
</para>
<para>
Example 3:
</para>
<para>
- <para>
-
+
<programlisting><phrase role="keyword">int</phrase> <phrase role="identifier">roll_die</phrase><phrase role="special">()</phrase> <phrase role="special">{</phrase>
<!--quickbook-escape-prefix--><co id="callout_tests2co" linkends="callout_tests2" /><!--quickbook-escape-postfix--><phrase role="identifier">boost</phrase><phrase role="special">::</phrase><phrase role="identifier">variate_generator</phrase><phrase role="special"><</phrase><phrase role="identifier">boost</phrase><phrase role="special">::</phrase><phrase role="identifier">mt19937</phrase><phrase role="special">&,</phrase> <phrase role="identifier">boost</phrase><phrase role="special">::</phrase><phrase role="identifier">uniform_int</phrase><phrase role="special"><></phrase> <phrase role="special">></phrase> <phrase role="identifier">die</phrase><phrase role="special">(</phrase><phrase role="identifier">gen</phrase><phrase role="special">,</phrase> <phrase role="identifier">dist</phrase><phrase role="special">);</phrase>
<phrase role="special">}</phrase>
</programlisting>
- </para>
- <para>
- <calloutlist><callout arearefs="callout_tests2co" id="callout_tests2"><para>
- </para>
- <important>
- <para>
- test
- </para>
- </important>
+ </para>
+ <para>
+ <calloutlist><callout arearefs="callout_tests2co" id="callout_tests2"><para>
+ </para>
+ <important>
<para>
- </para></callout></calloutlist>
+ test
</para>
+ </important>
+ <para>
+ </para></callout></calloutlist>
</para>
</article>
Modified: trunk/tools/quickbook/test/import.gold
==============================================================================
--- trunk/tools/quickbook/test/import.gold (original)
+++ trunk/tools/quickbook/test/import.gold 2010-07-06 19:10:10 EDT (Tue, 06 Jul 2010)
@@ -5,99 +5,93 @@
<articleinfo>
</articleinfo>
<para>
- <para>
- This is the <emphasis role="bold"><emphasis>foo</emphasis></emphasis> function.
- </para>
- <para>
- This description can have paragraphs...
- </para>
- <itemizedlist>
- <listitem>
- <simpara>
- lists
- </simpara>
- </listitem>
- <listitem>
- <simpara>
- etc.
- </simpara>
- </listitem>
- </itemizedlist>
- <para>
- And any quickbook block markup.
- </para>
- <para>
-
+ This is the <emphasis role="bold"><emphasis>foo</emphasis></emphasis> function.
+ </para>
+ <para>
+ This description can have paragraphs...
+ </para>
+ <itemizedlist>
+ <listitem>
+ <simpara>
+ lists
+ </simpara>
+ </listitem>
+ <listitem>
+ <simpara>
+ etc.
+ </simpara>
+ </listitem>
+ </itemizedlist>
+ <para>
+ And any quickbook block markup.
+ </para>
+ <para>
+
<programlisting><phrase role="identifier">std</phrase><phrase role="special">::</phrase><phrase role="identifier">string</phrase> <phrase role="identifier">foo</phrase><phrase role="special">()</phrase>
<phrase role="special">{</phrase>
<phrase role="comment">// return 'em, foo man!
</phrase> <phrase role="keyword">return</phrase> <phrase role="string">"foo"</phrase><phrase role="special">;</phrase>
<phrase role="special">}</phrase>
</programlisting>
- </para>
</para>
<para>
- <para>
- This is the Python <emphasis role="bold"><emphasis>foo</emphasis></emphasis>
- function.
- </para>
- <para>
- This description can have paragraphs...
- </para>
- <itemizedlist>
- <listitem>
- <simpara>
- lists
- </simpara>
- </listitem>
- <listitem>
- <simpara>
- etc.
- </simpara>
- </listitem>
- </itemizedlist>
- <para>
- And any quickbook block markup.
- </para>
- <para>
-
+ This is the Python <emphasis role="bold"><emphasis>foo</emphasis></emphasis>
+ function.
+ </para>
+ <para>
+ This description can have paragraphs...
+ </para>
+ <itemizedlist>
+ <listitem>
+ <simpara>
+ lists
+ </simpara>
+ </listitem>
+ <listitem>
+ <simpara>
+ etc.
+ </simpara>
+ </listitem>
+ </itemizedlist>
+ <para>
+ And any quickbook block markup.
+ </para>
+ <para>
+
<programlisting><phrase role="keyword">def</phrase> <phrase role="identifier">foo</phrase><phrase role="special">():</phrase>
<phrase role="comment"># return 'em, foo man!
</phrase> <phrase role="keyword">return</phrase> <phrase role="string">"foo"</phrase>
</programlisting>
- </para>
</para>
<para>
- <para>
- This is the C <emphasis role="bold"><emphasis>foo</emphasis></emphasis> function.
- </para>
- <para>
- This description can have paragraphs...
- </para>
- <itemizedlist>
- <listitem>
- <simpara>
- lists
- </simpara>
- </listitem>
- <listitem>
- <simpara>
- etc.
- </simpara>
- </listitem>
- </itemizedlist>
- <para>
- And any quickbook block markup.
- </para>
- <para>
-
+ This is the C <emphasis role="bold"><emphasis>foo</emphasis></emphasis> function.
+ </para>
+ <para>
+ This description can have paragraphs...
+ </para>
+ <itemizedlist>
+ <listitem>
+ <simpara>
+ lists
+ </simpara>
+ </listitem>
+ <listitem>
+ <simpara>
+ etc.
+ </simpara>
+ </listitem>
+ </itemizedlist>
+ <para>
+ And any quickbook block markup.
+ </para>
+ <para>
+
<programlisting><phrase role="keyword">char</phrase><phrase role="special">*</phrase> <phrase role="identifier">foo</phrase><phrase role="special">()</phrase>
<phrase role="special">{</phrase>
<phrase role="comment">// return 'em, foo man!
</phrase> <phrase role="keyword">return</phrase> <phrase role="string">"foo"</phrase><phrase role="special">;</phrase>
<phrase role="special">}</phrase>
</programlisting>
- </para>
</para>
</article>
Modified: trunk/tools/quickbook/test/quickbook-manual.gold
==============================================================================
--- trunk/tools/quickbook/test/quickbook-manual.gold (original)
+++ trunk/tools/quickbook/test/quickbook-manual.gold 2010-07-06 19:10:10 EDT (Tue, 06 Jul 2010)
@@ -2060,12 +2060,10 @@
Which will expand to:
</para>
<para>
- <para>
- Hi, my name is James Bond. I am 39 years old. I am a Spy.
- </para>
- <para>
- Hi, my name is Santa Clause. I am 87 years old. I am a Big Red Fatso.
- </para>
+ Hi, my name is James Bond. I am 39 years old. I am a Spy.
+ </para>
+ <para>
+ Hi, my name is Santa Clause. I am 87 years old. I am a Big Red Fatso.
</para>
<caution>
<para>
@@ -2689,52 +2687,48 @@
And the result is:
</para>
<para>
- <para>
- This is the <emphasis role="bold"><emphasis>foo</emphasis></emphasis>
- function.
- </para>
- <para>
- This description can have paragraphs...
- </para>
- <itemizedlist>
- <listitem>
- <simpara>
- lists
- </simpara>
- </listitem>
- <listitem>
- <simpara>
- etc.
- </simpara>
- </listitem>
- </itemizedlist>
- <para>
- And any quickbook block markup.
- </para>
- <para>
-
+ This is the <emphasis role="bold"><emphasis>foo</emphasis></emphasis> function.
+ </para>
+ <para>
+ This description can have paragraphs...
+ </para>
+ <itemizedlist>
+ <listitem>
+ <simpara>
+ lists
+ </simpara>
+ </listitem>
+ <listitem>
+ <simpara>
+ etc.
+ </simpara>
+ </listitem>
+ </itemizedlist>
+ <para>
+ And any quickbook block markup.
+ </para>
+ <para>
+
<programlisting><phrase role="identifier">std</phrase><phrase role="special">::</phrase><phrase role="identifier">string</phrase> <phrase role="identifier">foo</phrase><phrase role="special">()</phrase>
<phrase role="special">{</phrase>
<phrase role="comment">// return 'em, foo man!
</phrase> <phrase role="keyword">return</phrase> <phrase role="string">"foo"</phrase><phrase role="special">;</phrase>
<phrase role="special">}</phrase>
</programlisting>
- </para>
- <para>
- This is the <emphasis role="bold"><emphasis>bar</emphasis></emphasis>
- function
- </para>
- <para>
-
+ </para>
+ <para>
+ This is the <emphasis role="bold"><emphasis>bar</emphasis></emphasis> function
+ </para>
+ <para>
+
<programlisting><phrase role="identifier">std</phrase><phrase role="special">::</phrase><phrase role="identifier">string</phrase> <phrase role="identifier">bar</phrase><phrase role="special">()</phrase>
<phrase role="special">{</phrase>
<phrase role="comment">// return 'em, bar man!
</phrase> <phrase role="keyword">return</phrase> <phrase role="string">"bar"</phrase><phrase role="special">;</phrase>
<phrase role="special">}</phrase></programlisting>
- </para>
- <para>
- Some trailing text here
- </para>
+ </para>
+ <para>
+ Some trailing text here
</para>
<anchor id="quickbook.syntax.block.import.code_snippet_markup"/>
<bridgehead renderas="sect5">
@@ -2798,18 +2792,16 @@
for details. Example:
</para>
<para>
- <para>
-
+
<programlisting><phrase role="identifier">std</phrase><phrase role="special">::</phrase><phrase role="identifier">string</phrase> <phrase role="identifier">foo_bar</phrase><phrase role="special">()</phrase> <!--quickbook-escape-prefix--><co id="quickbook0co" linkends="quickbook0" /><!--quickbook-escape-postfix-->
<phrase role="special">{</phrase>
<phrase role="keyword">return</phrase> <phrase role="string">"foo-bar"</phrase><phrase role="special">;</phrase> <!--quickbook-escape-prefix--><co id="quickbook1co" linkends="quickbook1" /><!--quickbook-escape-postfix-->
<phrase role="special">}</phrase>
</programlisting>
- </para>
- <para>
- <calloutlist><callout arearefs="quickbook0co" id="quickbook0"><para> The <emphasis>Mythical</emphasis> FooBar. See <ulink url="http://en.wikipedia.org/wiki/Foobar">Foobar
- for details</ulink> </para></callout><callout arearefs="quickbook1co" id="quickbook1"><para> return 'em, foo-bar man! </para></callout></calloutlist>
- </para>
+ </para>
+ <para>
+ <calloutlist><callout arearefs="quickbook0co" id="quickbook0"><para> The <emphasis>Mythical</emphasis> FooBar. See <ulink url="http://en.wikipedia.org/wiki/Foobar">Foobar
+ for details</ulink> </para></callout><callout arearefs="quickbook1co" id="quickbook1"><para> return 'em, foo-bar man! </para></callout></calloutlist>
</para>
<para>
Checkout <ulink url="../../test/stub.cpp">stub.cpp</ulink> to see the actual
@@ -3731,13 +3723,11 @@
</para>
</entry>
<entry>
- <para>
-
+
<programlisting><!--quickbook-escape-prefix--># one
# two
# three
<!--quickbook-escape-postfix--></programlisting>
- </para>
</entry>
<entry>
<para>
@@ -3753,13 +3743,11 @@
</para>
</entry>
<entry>
- <para>
-
+
<programlisting><!--quickbook-escape-prefix-->* one
* two
* three
<!--quickbook-escape-postfix--></programlisting>
- </para>
</entry>
<entry>
<para>
@@ -3996,14 +3984,12 @@
</para>
</entry>
<entry>
- <para>
-
+
<programlisting><!--quickbook-escape-prefix-->[table Title
[[a][b][c]]
[[a][b][c]]
]
<!--quickbook-escape-postfix--></programlisting>
- </para>
</entry>
<entry>
<para>
@@ -4018,14 +4004,12 @@
</para>
</entry>
<entry>
- <para>
-
+
<programlisting><!--quickbook-escape-prefix-->[variablelist Title
[[a][b]]
[[a][b]]
]
<!--quickbook-escape-postfix--></programlisting>
- </para>
</entry>
<entry>
<para>
Modified: trunk/tools/quickbook/test/template-section.gold
==============================================================================
--- trunk/tools/quickbook/test/template-section.gold (original)
+++ trunk/tools/quickbook/test/template-section.gold 2010-07-06 19:10:10 EDT (Tue, 06 Jul 2010)
@@ -6,22 +6,20 @@
<articleinfo>
</articleinfo>
<para>
+ It's a pity if the whole template is wrapped in a paragraph.
+ </para>
+ <section id="section_in_a_template.test">
+ <title><link linkend="section_in_a_template.test">Test</link></title>
<para>
- It's a pity if the whole template is wrapped in a paragraph.
+ Hello.
</para>
- <section id="section_in_a_template.test">
- <title><link linkend="section_in_a_template.test">Test</link></title>
- <para>
- Hello.
- </para>
- <anchor id="section_in_a_template.test.just_to_test_id_generation"/>
- <bridgehead renderas="sect3">
- <link linkend="section_in_a_template.test.just_to_test_id_generation">Just
- to test id generation</link>
- </bridgehead>
- <para>
- Goodbye.
- </para>
- </section>
- </para>
+ <anchor id="section_in_a_template.test.just_to_test_id_generation"/>
+ <bridgehead renderas="sect3">
+ <link linkend="section_in_a_template.test.just_to_test_id_generation">Just
+ to test id generation</link>
+ </bridgehead>
+ <para>
+ Goodbye.
+ </para>
+ </section>
</article>
Modified: trunk/tools/quickbook/test/templates.gold
==============================================================================
--- trunk/tools/quickbook/test/templates.gold (original)
+++ trunk/tools/quickbook/test/templates.gold 2010-07-06 19:10:10 EDT (Tue, 06 Jul 2010)
@@ -13,24 +13,18 @@
foo baz
</para>
<para>
- <para>
- foo baz
- </para>
+ foo baz
</para>
<para>
- <para>
- This is a complete paragraph. kalamazoo kalamazoo kalamazoo kalamazoo kalamazoo
- kalamazoo kalamazoo kalamazoo kalamazoo.... blah blah blah......
- </para>
+ This is a complete paragraph. kalamazoo kalamazoo kalamazoo kalamazoo kalamazoo
+ kalamazoo kalamazoo kalamazoo kalamazoo.... blah blah blah......
</para>
<para>
<hey>baz</hey>
</para>
<para>
- <para>
- This is a complete paragraph. madagascar madagascar madagascar madagascar
- madagascar madagascar madagascar madagascar madagascar.... blah blah blah......
- </para>
+ This is a complete paragraph. madagascar madagascar madagascar madagascar madagascar
+ madagascar madagascar madagascar madagascar.... blah blah blah......
</para>
<para>
zoom peanut zoom
@@ -44,14 +38,12 @@
<para>
wxyz wxyz trail
</para>
- <para>
-
+
<programlisting><phrase role="keyword">int</phrase> <phrase role="identifier">main</phrase><phrase role="special">()</phrase>
<phrase role="special">{</phrase>
<phrase role="identifier">std</phrase><phrase role="special">::</phrase><phrase role="identifier">cout</phrase> <phrase role="special"><<</phrase> "Hello, World" <phrase role="special"><<</phrase> <phrase role="identifier">std</phrase><phrase role="special">::</phrase><phrase role="identifier">endl</phrase><phrase role="special">;</phrase>
<phrase role="special">}</phrase>
</programlisting>
- </para>
<para>
x<superscript>2</superscript>
</para>
Boost-Commit list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk