Skip to content

Commit 8739d6e

Browse files
author
cpprefjp-autoupdate
committed
update automatically
1 parent 0ac4fc1 commit 8739d6e

20 files changed

+3818
-316
lines changed

implementation-status.html

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -164,8 +164,8 @@
164164

165165
<p class="text-right"><small>
166166
最終更新日時(UTC):
167-
<span itemprop="datePublished" content="2024-07-10T07:47:57">
168-
2024年07月10日 07時47分57秒
167+
<span itemprop="datePublished" content="2024-07-18T16:39:47">
168+
2024年07月18日 16時39分47秒
169169
</span>
170170
<br/>
171171
<span itemprop="author" itemscope itemtype="http://schema.org/Person">
@@ -494,7 +494,7 @@ <h2><a href="#cpp11" id="cpp11">C++11言語機能の実装状況</a></h2>
494494
</tr>
495495
<tr>
496496
<td>N2672: <a href="lang/cpp11/initializer_lists.html">初期化子リスト</a></td>
497-
<td>波括弧による初期化を<a class="cpprefjp-defined-word" data-desc="プログラム定義。ユーザー(プログラマ)によって定義されること(標準ライブラリで定義されるものを除く)">ユーザー定義</a>する。<code>vector&lt;int&gt; v = {1, 2, 3};</code>など。</td>
497+
<td>波カッコによる初期化を<a class="cpprefjp-defined-word" data-desc="プログラム定義。ユーザー(プログラマ)によって定義されること(標準ライブラリで定義されるものを除く)">ユーザー定義</a>する。<code>vector&lt;int&gt; v = {1, 2, 3};</code>など。</td>
498498
<td>4.4</td>
499499
<td>3.1</td>
500500
<td>14.0</td>

international-standard.html

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -164,12 +164,12 @@
164164

165165
<p class="text-right"><small>
166166
最終更新日時(UTC):
167-
<span itemprop="datePublished" content="2024-07-06T08:19:12">
168-
2024年07月06日 08時19分12秒
167+
<span itemprop="datePublished" content="2024-07-18T16:39:47">
168+
2024年07月18日 16時39分47秒
169169
</span>
170170
<br/>
171171
<span itemprop="author" itemscope itemtype="http://schema.org/Person">
172-
<span itemprop="name">suomesta</span>
172+
<span itemprop="name">Akira Takahashi</span>
173173
</span>
174174
が更新
175175
</small></p>
@@ -266,7 +266,7 @@ <h2><a href="#list-of-iso-cpp" id="list-of-iso-cpp">国際標準規格の一覧<
266266
</tbody>
267267
</table>
268268
<ol>
269-
<li><a href="#note_ref-t1-1" id="note-t1-1"><strong>^</strong></a> 括弧内は策定時・標準化前に一時的に用いられた通称</li>
269+
<li><a href="#note_ref-t1-1" id="note-t1-1"><strong>^</strong></a> カッコ内は策定時・標準化前に一時的に用いられた通称</li>
270270
<li><a href="#note_ref-t1-2" id="note-t1-2"><strong>^</strong></a> 最終国際規格案はPDFやHTMLなどの形で一般公開されていないため、それにほぼ同一の内容の規格案を参照する。</li>
271271
<li><a href="#note_ref-t1-3" id="note-t1-3"><strong>^</strong></a> N4861 は、C++20 DISであるN4860に対するデザインレベルの差とC++17との相互参照がない以外の差はないため、事実上 N4861 が C++20 を参照する時に用いられる。</li>
272272
<li><a href="#note_ref-t1-4" id="note-t1-4"><strong>^</strong></a> N4788 は政治的事情により撤回された (参照 N4792)</li>

lang/cpp11.html

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -176,8 +176,8 @@
176176

177177
<p class="text-right"><small>
178178
最終更新日時(UTC):
179-
<span itemprop="datePublished" content="2024-07-10T07:47:57">
180-
2024年07月10日 07時47分57秒
179+
<span itemprop="datePublished" content="2024-07-18T16:39:47">
180+
2024年07月18日 16時39分47秒
181181
</span>
182182
<br/>
183183
<span itemprop="author" itemscope itemtype="http://schema.org/Person">
@@ -229,7 +229,7 @@ <h3>一般的な機能</h3>
229229
</tr>
230230
<tr>
231231
<td><a href="cpp11/initializer_lists.html">初期化子リスト</a></td>
232-
<td>波括弧による初期化を<a class="cpprefjp-defined-word" data-desc="プログラム定義。ユーザー(プログラマ)によって定義されること(標準ライブラリで定義されるものを除く)">ユーザー定義</a>する。<code>vector&lt;int&gt; v = {1, 2, 3};</code>など。</td>
232+
<td>波カッコによる初期化を<a class="cpprefjp-defined-word" data-desc="プログラム定義。ユーザー(プログラマ)によって定義されること(標準ライブラリで定義されるものを除く)">ユーザー定義</a>する。<code>vector&lt;int&gt; v = {1, 2, 3};</code>など。</td>
233233
</tr>
234234
<tr>
235235
<td><a href="cpp11/uniform_initialization.html">一様初期化</a></td>

lang/cpp11/decltype.html

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -68,7 +68,7 @@
6868

6969
</head>
7070
<body>
71-
<header data-kunai-mdinfo="{&#34;meta&#34;: {&#34;cpp&#34;: [&#34;cpp11&#34;]}, &#34;sources&#34;: [{&#34;id&#34;: &#34;2cc2a21cc14e16a5926d30998ffb7bc5955a0c02&#34;, &#34;source&#34;: &#34;#include &lt;iostream&gt;\n\ntemplate&lt;typename T, typename U&gt;\nauto add(const T&amp; lhs, const U&amp; rhs)\n -&gt; decltype(lhs + rhs) // add \u306e\u623b\u308a\u5024\u578b\u306f lhs + rhs \u306e\u5f0f\u306e\u578b\n{\n return lhs + rhs;\n}\n\nint main()\n{\n auto r = add(1, 2.0F); // r \u306e\u578b\u306f float \u578b\n std::cout &lt;&lt; std::fixed &lt;&lt; r &lt;&lt; &#39;\\n&#39;;\n}\n&#34;}, {&#34;id&#34;: &#34;2245d6f58402d79348ba8a235266a8a05cca4e0a&#34;, &#34;source&#34;: &#34;#include &lt;iostream&gt;\n\nint main()\n{\n int i = 10;\n decltype(i) j = i; // j \u306f int \u578b\n decltype((i)) k = i; // k \u306f int&amp; \u578b\uff08i \u306f lvalue \u3067\u4e38\u62ec\u5f27\u304c\u4ed8\u3044\u3066\u3044\u308b\u306e\u3067\uff09\n\n i = 42;\n std::cout &lt;&lt; j &lt;&lt; \&#34;, \&#34; &lt;&lt; k &lt;&lt; &#39;\\n&#39;;\n}\n&#34;}, {&#34;id&#34;: &#34;6d9d26de98bd709edc985a6c40bf455c07e9c4fb&#34;, &#34;source&#34;: &#34;#include &lt;iostream&gt;\n\nstruct S {\n int i = 42;\n};\n\nint main()\n{\n S s;\n auto mp = &amp;decltype(s)::i; // mp \u306e\u578b\u306f int S::* \u578b\uff08S \u306e int \u578b\u306e\u30e1\u30f3\u30d0\u3078\u306e\u30dd\u30a4\u30f3\u30bf\uff09\n std::cout &lt;&lt; s.*mp &lt;&lt; &#39;\\n&#39;;\n}\n&#34;}, {&#34;id&#34;: &#34;b71c456e74c82059f18942232a989de1d9286a47&#34;, &#34;source&#34;: &#34;#include &lt;iostream&gt;\n\nstruct S {\n S() { std::cout &lt;&lt; \&#34;S()\\n\&#34;; }\n ~S() { std::cout &lt;&lt; \&#34;~S()\\n\&#34;; }\n};\n\nS f();\n\nint main()\n{\n std::cout &lt;&lt; \&#34;allocate\\n\&#34;;\n void* p = ::operator new(sizeof(f()));\n\n std::cout &lt;&lt; \&#34;construct\\n\&#34;;\n ::new(p) decltype(f()); // \u914d\u7f6e new \u3067 p \u306e\u6307\u3059\u30e1\u30e2\u30ea\u306b S \u578b\u306e\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3092\u69cb\u7bc9\n\n std::cout &lt;&lt; \&#34;destruct\\n\&#34;;\n auto sp = static_cast&lt;decltype(f())*&gt;(p); // \u30c7\u30b9\u30c8\u30e9\u30af\u30bf\u547c\u3073\u51fa\u3057\u306e\u305f\u3081\u3001S \u578b\u3078\u306e\u30dd\u30a4\u30f3\u30bf\u306b\u30ad\u30e3\u30b9\u30c8\n sp-&gt;~decltype(f())(); // \u660e\u793a\u7684\u30c7\u30b9\u30c8\u30e9\u30af\u30bf\u547c\u3073\u51fa\u3057\u3067 sp \u306e\u6307\u3059\u30e1\u30e2\u30ea\u306e S \u578b\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3092\u7834\u68c4\n\n std::cout &lt;&lt; \&#34;deallocate\\n\&#34;;\n ::operator delete(p);\n}\n&#34;}, {&#34;id&#34;: &#34;81c563fd16e7646be5cbcf026bd4841e8b2e13e5&#34;, &#34;source&#34;: &#34;#include &lt;iostream&gt;\n\nstruct S {\n int i;\n S(int i) : i(i) {}\n operator decltype(i)() { return i; } // int \u578b\u3078\u306e\u5909\u63db\u6f14\u7b97\u5b50\n};\n\nint main()\n{\n S s(42);\n std::cout &lt;&lt; s &lt;&lt; &#39;\\n&#39;;\n}\n&#34;}, {&#34;id&#34;: &#34;58f87463b824488b544049b01469532b5c1751f2&#34;, &#34;source&#34;: &#34;#include &lt;iostream&gt;\n#include &lt;utility&gt;\n\ntemplate&lt;typename T&gt;\nauto d(T&amp;&amp; x)\n{\n return x + x;\n}\n\nstruct S {\n static constexpr int g = 20;\n};\n\nconstexpr int S::g;\n\nint main()\n{\n auto l = [](auto&amp;&amp; x) {\n std::cout &lt;&lt; \&#34;start\\n\&#34;;\n auto ret = d(std::forward&lt;decltype(x)&gt;(x)); // x \u306e\u578b\u306e\u307e\u307e\u3067\u8ee2\u9001\n std::cout &lt;&lt; \&#34;end\\n\&#34;;\n return ret;\n };\n std::cout &lt;&lt; l(S::g) &lt;&lt; &#39;\\n&#39;;\n}\n&#34;}], &#34;page_id&#34;: [&#34;lang&#34;, &#34;cpp11&#34;, &#34;decltype&#34;]}">
71+
<header data-kunai-mdinfo="{&#34;meta&#34;: {&#34;cpp&#34;: [&#34;cpp11&#34;]}, &#34;sources&#34;: [{&#34;id&#34;: &#34;2cc2a21cc14e16a5926d30998ffb7bc5955a0c02&#34;, &#34;source&#34;: &#34;#include &lt;iostream&gt;\n\ntemplate&lt;typename T, typename U&gt;\nauto add(const T&amp; lhs, const U&amp; rhs)\n -&gt; decltype(lhs + rhs) // add \u306e\u623b\u308a\u5024\u578b\u306f lhs + rhs \u306e\u5f0f\u306e\u578b\n{\n return lhs + rhs;\n}\n\nint main()\n{\n auto r = add(1, 2.0F); // r \u306e\u578b\u306f float \u578b\n std::cout &lt;&lt; std::fixed &lt;&lt; r &lt;&lt; &#39;\\n&#39;;\n}\n&#34;}, {&#34;id&#34;: &#34;10abf31123e76640d0003465b70235ee2a6a22e5&#34;, &#34;source&#34;: &#34;#include &lt;iostream&gt;\n\nint main()\n{\n int i = 10;\n decltype(i) j = i; // j \u306f int \u578b\n decltype((i)) k = i; // k \u306f int&amp; \u578b\uff08i \u306f lvalue \u3067\u4e38\u30ab\u30c3\u30b3\u304c\u4ed8\u3044\u3066\u3044\u308b\u306e\u3067\uff09\n\n i = 42;\n std::cout &lt;&lt; j &lt;&lt; \&#34;, \&#34; &lt;&lt; k &lt;&lt; &#39;\\n&#39;;\n}\n&#34;}, {&#34;id&#34;: &#34;6d9d26de98bd709edc985a6c40bf455c07e9c4fb&#34;, &#34;source&#34;: &#34;#include &lt;iostream&gt;\n\nstruct S {\n int i = 42;\n};\n\nint main()\n{\n S s;\n auto mp = &amp;decltype(s)::i; // mp \u306e\u578b\u306f int S::* \u578b\uff08S \u306e int \u578b\u306e\u30e1\u30f3\u30d0\u3078\u306e\u30dd\u30a4\u30f3\u30bf\uff09\n std::cout &lt;&lt; s.*mp &lt;&lt; &#39;\\n&#39;;\n}\n&#34;}, {&#34;id&#34;: &#34;b71c456e74c82059f18942232a989de1d9286a47&#34;, &#34;source&#34;: &#34;#include &lt;iostream&gt;\n\nstruct S {\n S() { std::cout &lt;&lt; \&#34;S()\\n\&#34;; }\n ~S() { std::cout &lt;&lt; \&#34;~S()\\n\&#34;; }\n};\n\nS f();\n\nint main()\n{\n std::cout &lt;&lt; \&#34;allocate\\n\&#34;;\n void* p = ::operator new(sizeof(f()));\n\n std::cout &lt;&lt; \&#34;construct\\n\&#34;;\n ::new(p) decltype(f()); // \u914d\u7f6e new \u3067 p \u306e\u6307\u3059\u30e1\u30e2\u30ea\u306b S \u578b\u306e\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3092\u69cb\u7bc9\n\n std::cout &lt;&lt; \&#34;destruct\\n\&#34;;\n auto sp = static_cast&lt;decltype(f())*&gt;(p); // \u30c7\u30b9\u30c8\u30e9\u30af\u30bf\u547c\u3073\u51fa\u3057\u306e\u305f\u3081\u3001S \u578b\u3078\u306e\u30dd\u30a4\u30f3\u30bf\u306b\u30ad\u30e3\u30b9\u30c8\n sp-&gt;~decltype(f())(); // \u660e\u793a\u7684\u30c7\u30b9\u30c8\u30e9\u30af\u30bf\u547c\u3073\u51fa\u3057\u3067 sp \u306e\u6307\u3059\u30e1\u30e2\u30ea\u306e S \u578b\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3092\u7834\u68c4\n\n std::cout &lt;&lt; \&#34;deallocate\\n\&#34;;\n ::operator delete(p);\n}\n&#34;}, {&#34;id&#34;: &#34;81c563fd16e7646be5cbcf026bd4841e8b2e13e5&#34;, &#34;source&#34;: &#34;#include &lt;iostream&gt;\n\nstruct S {\n int i;\n S(int i) : i(i) {}\n operator decltype(i)() { return i; } // int \u578b\u3078\u306e\u5909\u63db\u6f14\u7b97\u5b50\n};\n\nint main()\n{\n S s(42);\n std::cout &lt;&lt; s &lt;&lt; &#39;\\n&#39;;\n}\n&#34;}, {&#34;id&#34;: &#34;58f87463b824488b544049b01469532b5c1751f2&#34;, &#34;source&#34;: &#34;#include &lt;iostream&gt;\n#include &lt;utility&gt;\n\ntemplate&lt;typename T&gt;\nauto d(T&amp;&amp; x)\n{\n return x + x;\n}\n\nstruct S {\n static constexpr int g = 20;\n};\n\nconstexpr int S::g;\n\nint main()\n{\n auto l = [](auto&amp;&amp; x) {\n std::cout &lt;&lt; \&#34;start\\n\&#34;;\n auto ret = d(std::forward&lt;decltype(x)&gt;(x)); // x \u306e\u578b\u306e\u307e\u307e\u3067\u8ee2\u9001\n std::cout &lt;&lt; \&#34;end\\n\&#34;;\n return ret;\n };\n std::cout &lt;&lt; l(S::g) &lt;&lt; &#39;\\n&#39;;\n}\n&#34;}], &#34;page_id&#34;: [&#34;lang&#34;, &#34;cpp11&#34;, &#34;decltype&#34;]}">
7272
<nav class="navbar navbar-default" role="navigation">
7373
<div class="container-fluid">
7474
<div class="navbar-header">
@@ -188,8 +188,8 @@
188188

189189
<p class="text-right"><small>
190190
最終更新日時(UTC):
191-
<span itemprop="datePublished" content="2024-07-10T07:47:57">
192-
2024年07月10日 07時47分57秒
191+
<span itemprop="datePublished" content="2024-07-18T16:39:47">
192+
2024年07月18日 16時39分47秒
193193
</span>
194194
<br/>
195195
<span itemprop="author" itemscope itemtype="http://schema.org/Person">
@@ -223,7 +223,7 @@ <h2>概要</h2>
223223
<p><div class="codehilite"><pre><span></span><code><span class="kt">int</span> <span class="n">i</span> <span class="o">=</span> <span class="mi">0</span><span class="p">;</span>
224224
<span class="n"><span style="color:#ff0000">decltype</span></span><span class="p">(</span><span class="n">i</span><span class="p">)</span> <span class="n">j</span> <span class="o">=</span> <span class="mi">0</span><span class="p">;</span> <span class="c1">// j は int 型</span>
225225
<span class="n"><span style="color:#ff0000">decltype</span></span><span class="p">(</span><span class="n">i</span><span class="p">)</span><span class="o">*</span> <span class="n">p</span> <span class="o">=</span> <span class="o">&amp;</span><span class="n">i</span><span class="p">;</span> <span class="c1">// p は int* 型</span>
226-
<span class="n"><span style="color:#ff0000">decltype</span></span><span class="p">((</span><span class="n">i</span><span class="p">))</span> <span class="n">k</span> <span class="o">=</span> <span class="n">i</span><span class="p">;</span> <span class="c1">// k は int&amp; 型(変数名 i の周りの余分な丸括弧に注意</span>
226+
<span class="n"><span style="color:#ff0000">decltype</span></span><span class="p">((</span><span class="n">i</span><span class="p">))</span> <span class="n">k</span> <span class="o">=</span> <span class="n">i</span><span class="p">;</span> <span class="c1">// k は int&amp; 型(変数名 i の周りの余分な丸カッコに注意</span>
227227

228228
<span class="k">template</span><span class="o">&lt;</span><span class="k">typename</span> <span class="n">T</span><span class="p">,</span> <span class="k">typename</span> <span class="n">U</span><span class="o">&gt;</span>
229229
<span class="k">auto</span> <span class="n">add</span><span class="p">(</span><span class="k">const</span> <span class="n">T</span><span class="o">&amp;</span> <span class="n">lhs</span><span class="p">,</span> <span class="k">const</span> <span class="n">U</span><span class="o">&amp;</span> <span class="n">rhs</span><span class="p">)</span>
@@ -240,15 +240,15 @@ <h2>概要</h2>
240240
<h2>仕様</h2>
241241
<p><code>e</code> を式とすると、<code>decltype(e)</code> が意味する型は以下のとおりである。</p>
242242
<ul>
243-
<li><code>e</code> が丸括弧で囲まれていない識別子の場合、あるいは、丸括弧で囲まれていないクラスメンバアクセスの場合<code>decltype(e)</code><code>e</code> で指定された実体の型である。<br />
243+
<li><code>e</code> が丸カッコで囲まれていない識別子の場合、あるいは、丸カッコで囲まれていないクラスメンバアクセスの場合<code>decltype(e)</code><code>e</code> で指定された実体の型である。<br />
244244
もしそのような実体が無いか、あるいは、<code>e</code> がオーバーロードされた複数の関数を指す場合、プログラムは<a class="cpprefjp-defined-word" data-desc="プログラムが適格でないこと。コンパイルエラーなどになる" href="../../implementation-compliance.html#dfn-ill-formed">不適格</a>である。</li>
245245
<li>そうではなくて、もし <code>e</code> が xvalue の場合、<code>e</code> の型を <code>T</code> とすると、<code>decltype(e)</code><code>T&amp;&amp;</code> である。</li>
246246
<li>そうではなくて、もし <code>e</code> が lvalue の場合、<code>e</code> の型を <code>T</code> とすると、<code>decltype(e)</code><code>T&amp;</code> である。</li>
247247
<li>上記以外の場合、<code>decltype(e)</code><code>e</code> の型である。</li>
248248
</ul>
249249
<p><code>decltype</code> のオペランドは「評価されないオペランド」である。</p>
250-
<p>ラムダ式の関数本体で、外部の自動変数に対して <code>decltype</code> を余分な丸括弧付きで使用した場合、クロージャ型のメンバ変数に対する <code>decltype</code> とみなされる。</p>
251-
<p><code>sizeof</code> とは異なり、<code>decltype</code> のオペランドには丸括弧が必須である。(<code>sizeof i</code> はOKだが、<code>decltype i</code> はNG)</p>
250+
<p>ラムダ式の関数本体で、外部の自動変数に対して <code>decltype</code> を余分な丸カッコ付きで使用した場合、クロージャ型のメンバ変数に対する <code>decltype</code> とみなされる。</p>
251+
<p><code>sizeof</code> とは異なり、<code>decltype</code> のオペランドには丸カッコが必須である。(<code>sizeof i</code> はOKだが、<code>decltype i</code> はNG)</p>
252252
<h2></h2>
253253
<h3>関数の戻り型での使用例</h3>
254254
<p><div class="yata" id="2cc2a21cc14e16a5926d30998ffb7bc5955a0c02"><div class="codehilite"><pre><span></span><code><span class="cp">#include</span> <span class="cpf"><a href="../../reference/iostream.html">&lt;iostream&gt;</a></span><span class="cp"></span>
@@ -271,13 +271,13 @@ <h4>出力</h4>
271271
<p><pre><code>3.000000
272272
</code></pre></p>
273273
<h3>変数の型としての使用例</h3>
274-
<p><div class="yata" id="2245d6f58402d79348ba8a235266a8a05cca4e0a"><div class="codehilite"><pre><span></span><code><span class="cp">#include</span> <span class="cpf"><a href="../../reference/iostream.html">&lt;iostream&gt;</a></span><span class="cp"></span>
274+
<p><div class="yata" id="10abf31123e76640d0003465b70235ee2a6a22e5"><div class="codehilite"><pre><span></span><code><span class="cp">#include</span> <span class="cpf"><a href="../../reference/iostream.html">&lt;iostream&gt;</a></span><span class="cp"></span>
275275

276276
<span class="kt">int</span> <span class="nf">main</span><span class="p">()</span>
277277
<span class="p">{</span>
278278
<span class="kt">int</span> <span class="n">i</span> <span class="o">=</span> <span class="mi">10</span><span class="p">;</span>
279279
<span class="n"><span style="color:#ff0000">decltype</span></span><span class="p">(</span><span class="n">i</span><span class="p">)</span> <span class="n">j</span> <span class="o">=</span> <span class="n">i</span><span class="p">;</span> <span class="c1">// j は int 型</span>
280-
<span class="n"><span style="color:#ff0000">decltype</span></span><span class="p">((</span><span class="n">i</span><span class="p">))</span> <span class="n">k</span> <span class="o">=</span> <span class="n">i</span><span class="p">;</span> <span class="c1">// k は int&amp; 型(i は lvalue で丸括弧が付いているので</span>
280+
<span class="n"><span style="color:#ff0000">decltype</span></span><span class="p">((</span><span class="n">i</span><span class="p">))</span> <span class="n">k</span> <span class="o">=</span> <span class="n">i</span><span class="p">;</span> <span class="c1">// k は int&amp; 型(i は lvalue で丸カッコが付いているので</span>
281281

282282
<span class="n">i</span> <span class="o">=</span> <span class="mi">42</span><span class="p">;</span>
283283
<span class="n"><a href="../../reference/iostream/cout.html">std::cout</a></span> <span class="o">&lt;&lt;</span> <span class="n">j</span> <span class="o">&lt;&lt;</span> <span class="s">", "</span> <span class="o">&lt;&lt;</span> <span class="n">k</span> <span class="o">&lt;&lt;</span> <span class="sc">'\n'</span><span class="p">;</span>

0 commit comments

Comments
 (0)