Content-Length: 5582 | pFad | https://cplusplus.github.io/LWG/issue252

Issue 252: missing casts/C-style casts used in iostreams

This page is a snapshot from the LWG issues list, see the Library Active Issues List for more information and the meaning of CD1 status.

252. missing casts/C-style casts used in iostreams

Section: 31.8 [string.streams] Status: CD1 Submitter: Martin Sebor Opened: 2000-07-28 Last modified: 2016-01-28

Priority: Not Prioritized

View all other issues in [string.streams].

View all issues with CD1 status.

Discussion:

27.7.2.2, p1 uses a C-style cast rather than the more appropriate const_cast<> in the Returns clause for basic_istringstream<>::rdbuf(). The same C-style cast is being used in 27.7.3.2, p1, D.7.2.2, p1, and D.7.3.2, p1, and perhaps elsewhere. 27.7.6, p1 and D.7.2.2, p1 are missing the cast altogether.

C-style casts have not been deprecated, so the first part of this issue is stylistic rather than a matter of correctness.

Proposed resolution:

In 27.7.2.2, p1 replace

  -1- Returns: (basic_stringbuf<charT,traits,Allocator>*)&sb.

with

  -1- Returns: const_cast<basic_stringbuf<charT,traits,Allocator>*>(&sb).

In 27.7.3.2, p1 replace

  -1- Returns: (basic_stringbuf<charT,traits,Allocator>*)&sb.

with

  -1- Returns: const_cast<basic_stringbuf<charT,traits,Allocator>*>(&sb).

In 27.7.6, p1, replace

  -1- Returns: &sb

with

  -1- Returns: const_cast<basic_stringbuf<charT,traits,Allocator>*>(&sb).

In D.7.2.2, p1 replace

  -2- Returns: &sb. 

with

  -2- Returns: const_cast<strstreambuf*>(&sb).








ApplySandwichStrip

pFad - (p)hone/(F)rame/(a)nonymizer/(d)eclutterfier!      Saves Data!


--- a PPN by Garber Painting Akron. With Image Size Reduction included!

Fetched URL: https://cplusplus.github.io/LWG/issue252

Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy