<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>Issue 3507: P0881R7 ("stacktrace") does not define "actual file name", "actual line number"</title>
<meta property="og:title" content="Issue 3507: P0881R7 (&quot;stacktrace&quot;) does not define &quot;actual file name&quot;, &quot;actual line number&quot;">
<meta property="og:description" content="C++ library issue. Status: Open">
<meta property="og:url" content="https://cplusplus.github.io/LWG/issue3507.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#Open">Open</a> status.</em></p>
<h3 id="3507"><a href="lwg-active.html#3507">3507</a>. P0881R7 ("stacktrace") does not define "actual file name", "actual line number"</h3>
<p><b>Section:</b> 19.6.3.4 <a href="https://wg21.link/stacktrace.entry.query">[stacktrace.entry.query]</a> <b>Status:</b> <a href="lwg-active.html#Open">Open</a>
 <b>Submitter:</b> Thomas K&ouml;ppe <b>Opened:</b> 2020-12-02 <b>Last modified:</b> 2023-01-11</p>
<p><b>Priority: </b>2
</p>
<p><b>View all issues with</b> <a href="lwg-status.html#Open">Open</a> status.</p>
<p><b>Discussion:</b></p>
<p>
The specification of 19.6.3.4 <a href="https://wg21.link/stacktrace.entry.query">[stacktrace.entry.query]</a> uses the terms "presumed or actual name 
of the source file" and "actual line number". It makes reference to 15.12 <a href="https://wg21.link/cpp.predefined">[cpp.predefined]</a>, 
which introduces the term "presumed". It does not clearly define the term, but it describes how the 
presumed values can be modified with preprocessor directives. However, there is no definition whatsoever 
of "actual".
<p/>
The term should either be defined, or we should strike the "actual" parts of the stacktrace wording. 
We should consult implementers about this.
<p/>
I don't have a proposed resolution, but if we want to keep "actual", then perhaps we should define 
both "presumed" and "actual" in 15.12 <a href="https://wg21.link/cpp.predefined">[cpp.predefined]</a>.
</p>

<p><i>[2021-01-15; Telecon prioritization]</i></p>

<p>
Set priority to 2 following reflector and telecon discussions.
</p>

<p><i>[2023-01-11; LWG telecon]</i></p>

<p>
We want to know the original intended meaning of "actual line number" here.
Presumably debuginfo stored in binaries uses a real line number in the source,
not one that might have been set by a <code>#line</code> directive.
The "presumed or actual" wording was added in R2 of the paper, possibly
as a result of LWG review.
</p>


<p id="res-3507"><b>Proposed resolution:</b></p>





</body>
</html>
