From -6418229081135026341
X-Google-Thread: 7894ca11fe,8595425769443ff6,start
X-Google-Attributes: gid7894ca11fe,public,usenet
X-Google-NewGroupId: yes
X-Google-Language: ENGLISH,ASCII-7-bit
Path: g2news2.google.com!news1.google.com!news.glorb.com!news.alt.net!frodo.cs.rpi.edu!not-for-mail
From: "Bo Persson" <bop@gmb.dk>
Newsgroups: comp.std.c++
Subject: N2760 Defect - <bitset> synopsis overspecified
Date: Mon,  5 Oct 2009 14:14:02 CST
Organization: unknown
Lines: 28
Sender: cppmods@cs.rpi.edu
Approved: austern@google.com
Message-ID: <7iusf9F338vmrU1@mid.individual.net>
NNTP-Posting-Host: netlab.cs.rpi.edu
To: (Usenet)
Return-Path: <cppmods@ruralroute.cs.rpi.edu>
X-Original-Date: Mon, 5 Oct 2009 20:33:25 +0200
X-Submission-Address: std-c++@netlab.cs.rpi.edu
Xref: g2news2.google.com comp.std.c++:1441

The resolutions to some library defect reports, like #1178

http://www.open-std.org/jtc1/sc22/wg21/docs/lwg-active.html#1178

requires that #includes in each synopsis should be taken literally.
This means that the <bitset> header now MUST include <stdexcept>, even
though none of the exceptions are mentioned in the <bitset> header.

Many other classes are required to throw exceptions like
invalid_argument and out_of_range, without explicitly including
<stdexcept> in their synopsis. It is totally possible for
implementations to throw the needed exceptions from utility functions,
whose implementations are not visible in the headers.

I propose that <stdexcept> is removed from the <bitset> header.



Bo Persson



--
[ comp.std.c++ is moderated.  To submit articles, try just posting with ]
[ your news-reader.  If that fails, use mailto:std-c++@netlab.cs.rpi.edu]
[              --- Please see the FAQ before posting. ---               ]
[ FAQ: http://www.comeaucomputing.com/csc/faq.html                      ]



