[cfe-commits] r154844 - in /cfe/trunk: include/clang/AST/ include/clang/Basic/ include/clang/Parse/ include/clang/Sema/ lib/Parse/ lib/Sema/ test/CXX/class/class.mem/ test/CXX/expr/expr.prim/expr.prim.general/ test/CXX/temp/temp.decls/temp.variad

Richard Smith richard at metafoo.co.uk
Tue May 1 18:19:06 PDT 2012

Hi Doug,

Since we've now found that this breaks libstdc++4.7's std::pair for builtin
types, I think we should disable or revert this change for compatibility,
at least for 3.1, and probably until we discuss it at Portland.

A patch to temporarily disable this feature is attached. If you'd prefer to
rip out the delayed parsing instead, let me know and I'll put together a
more comprehensive patch.


On Mon, Apr 16, 2012 at 5:24 PM, Douglas Gregor <dgregor at apple.com> wrote:

> On Apr 16, 2012, at 12:44 PM, Richard Smith <richard at metafoo.co.uk> wrote:
> On Mon, Apr 16, 2012 at 11:27 AM, Douglas Gregor <dgregor at apple.com>wrote:
>> Author: dgregor
>> Date: Mon Apr 16 13:27:27 2012
>> New Revision: 154844
>> URL: http://llvm.org/viewvc/llvm-project?rev=154844&view=rev
>> Log:
>> Implement the last part of C++ [class.mem]p2, delaying the parsing of
>> exception specifications on member functions until after the closing
>> '}' for the containing class. This allows, for example, a member
>> function to throw an instance of its own class. Fixes PR12564 and a
>> fairly embarassing oversight in our C++98/03 support.
> This feature was removed from the language in DR1308 (which was voted into
> the WP at Kona).
> Richard and I have discussed this, and we think that removing this feature
> from the language is in error. We'll continue to implement the pre-DR1308
> wording and bring the issue up for discussion again at the new committee
> meeting.
> - Doug
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20120501/dca4b26d/attachment.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: disable-delayed-parsing-exception-spec.diff
Type: application/octet-stream
Size: 4469 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20120501/dca4b26d/attachment.obj>

More information about the cfe-commits mailing list