<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>Issue 2500: [fund.ts.v2] fundts.memory.smartptr.shared.obs/6 should apply to cv-unqualified void</title>
<meta property="og:title" content="Issue 2500: [fund.ts.v2] fundts.memory.smartptr.shared.obs/6 should apply to cv-unqualified void">
<meta property="og:description" content="C++ library issue. Status: TS">
<meta property="og:url" content="https://cplusplus.github.io/LWG/issue2500.html">
<meta property="og:type" content="website">
<meta property="og:image" content="http://cplusplus.github.io/LWG/images/cpp_logo.png">
<meta property="og:image:alt" content="C++ logo">
<style>
  p {text-align:justify}
  li {text-align:justify}
  pre code.backtick::before { content: "`" }
  pre code.backtick::after { content: "`" }
  blockquote.note
  {
    background-color:#E0E0E0;
    padding-left: 15px;
    padding-right: 15px;
    padding-top: 1px;
    padding-bottom: 1px;
  }
  ins {background-color:#A0FFA0}
  del {background-color:#FFA0A0}
  table.issues-index { border: 1px solid; border-collapse: collapse; }
  table.issues-index th { text-align: center; padding: 4px; border: 1px solid; }
  table.issues-index td { padding: 4px; border: 1px solid; }
  table.issues-index td:nth-child(1) { text-align: right; }
  table.issues-index td:nth-child(2) { text-align: left; }
  table.issues-index td:nth-child(3) { text-align: left; }
  table.issues-index td:nth-child(4) { text-align: left; }
  table.issues-index td:nth-child(5) { text-align: center; }
  table.issues-index td:nth-child(6) { text-align: center; }
  table.issues-index td:nth-child(7) { text-align: left; }
  table.issues-index td:nth-child(5) span.no-pr { color: red; }
  @media (prefers-color-scheme: dark) {
     html {
        color: #ddd;
        background-color: black;
     }
     ins {
        background-color: #225522
     }
     del {
        background-color: #662222
     }
     a {
        color: #6af
     }
     a:visited {
        color: #6af
     }
     blockquote.note
     {
        background-color: rgba(255, 255, 255, .10)
     }
  }
</style>
</head>
<body>
<hr>
<p><em>This page is a snapshot from the LWG issues list, see the <a href="lwg-active.html">Library Active Issues List</a> for more information and the meaning of <a href="lwg-active.html#TS">TS</a> status.</em></p>
<h3 id="2500"><a href="lwg-defects.html#2500">2500</a>. [fund.ts.v2] fundts.memory.smartptr.shared.obs/6 should apply to <i>cv</i>-unqualified <code>void</code></h3>
<p><b>Section:</b> 8.2.1.2 <a href="https://cplusplus.github.io/fundamentals-ts/v2.html#memory.smartptr.shared.obs">[fund.ts.v2::memory.smartptr.shared.obs]</a> <b>Status:</b> <a href="lwg-active.html#TS">TS</a>
 <b>Submitter:</b> Jeffrey Yasskin <b>Opened:</b> 2015-05-11 <b>Last modified:</b> 2017-07-30</p>
<p><b>Priority: </b>0
</p>
<p><b>View all issues with</b> <a href="lwg-status.html#TS">TS</a> status.</p>
<p><b>Discussion:</b></p>
<p><b>Addresses: fund.ts.v2</b></p>
<p>
S. B. Tam reported this <a href="https://github.com/cplusplus/fundamentals-ts/issues/51">here</a>.
<p/>
<a href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2014/n3920.html">N3920</a> changed <code>operator*()</code> in 
[util.smartptr.shared.obs] as:
</p>
<blockquote>
<p>
<i>Remarks</i>: When <code>T</code> is <ins>an array type or <i>cv</i>-qualified</ins> <code>void</code>, it
is unspecified whether this member function is declared. &hellip;
</p>
</blockquote>
<p>
This excludes <i>cv</i>-unqualified <code>void</code>, which is probably unintended.
</p>

<p><i>[2015-09-11, Telecon]</i></p>

<p>
Move to Tentatively Ready
</p>


<p id="res-2500"><b>Proposed resolution:</b></p>
<ol>
<li><p>In the <a href="https://rawgit.com/cplusplus/fundamentals-ts/v2/fundamentals-ts.html#memory.smartptr.shared.obs.6">library 
fundamentals v2</a>, [memory.smartptr.shared.obs] p2, change as indicated:</p>
<blockquote>
<p>
<i>Remarks</i>: When <code>T</code> is an array type or <ins>(possibly</ins> <i>cv</i>-qualified<ins>)</ins> 
<code>void</code>, it is unspecified whether this
member function is declared. If it is declared, it is unspecified what
its return type is, except that the declaration (although not
necessarily the definition) of the function shall be well formed.
</p>
</blockquote>
</li>
</ol>





</body>
</html>
