File tree Expand file tree Collapse file tree 1 file changed +42
-0
lines changed
Expand file tree Collapse file tree 1 file changed +42
-0
lines changed Original file line number Diff line number Diff line change 1+ <?xml version =' 1.0' encoding =' utf-8' standalone =' no' ?>
2+ <!DOCTYPE issue SYSTEM "lwg-issue.dtd">
3+
4+ <issue num =" 4251" status =" New" >
5+ <title >Are exposition-only classes considered specified for the purpose of `final`?</title >
6+ <section ><sref ref =" [derivation]" /></section >
7+ <submitter >Jiang An</submitter >
8+ <date >28 Apr 2025</date >
9+ <priority >99</priority >
10+
11+ <discussion >
12+ <p >
13+ Currently, iterator and sentinel types of several views are exposition-only in the standard wording,
14+ and none of them is specified to be `final`. These types are arguably required to be non-final due to
15+ <sref ref =" [derivation]" /> p4 because it's possible to say they are specified except for names.
16+ <p />
17+ However, libc++ marks `join_view`'s iterator `final` for some reasons
18+ (<a href =" https://reviews.llvm.org/D142811#inline-1383022" >https://reviews.llvm.org/D142811#inline-1383022</a >).
19+ Perhaps we should clarify that the `final`-ity of exposition-only class is unspecified.
20+ </p >
21+ </discussion >
22+
23+ <resolution >
24+ <p >
25+ This wording is relative to <paper num =" N5008" />.
26+ </p >
27+ <ol >
28+
29+ <li ><p >Modify <sref ref =" [derivation]" /> as indicated:</p >
30+
31+ <blockquote >
32+ <p >
33+ -4- All types specified in the C++ standard library shall be non-`final` types unless otherwise specified.
34+ <ins >Exposition-only classes (<sref ref =" [expos.only.entity]" />) are not considered specified for the purpose
35+ of `final`.</ins >
36+ </p >
37+ </blockquote >
38+ </li >
39+ </ol >
40+ </resolution >
41+
42+ </issue >
You can’t perform that action at this time.
0 commit comments