On Tue, Nov 11, 2014 at 6:00 PM, Richard Smith <[email protected]>
wrote:

> Author: rsmith
> Date: Tue Nov 11 20:00:47 2014
> New Revision: 221750
>
> URL: http://llvm.org/viewvc/llvm-project?rev=221750&view=rev
> Log:
> Instantiate exception specifications when instantiating function types
> (other
> than the type of a function declaration). We previously didn't instantiate
> these at all! This also covers the pathological case where the only
> mention of
> a parameter pack is within the exception specification; this gives us a
> second
> way (other than alias templates) to reach the horrible state where a type
> contains an unexpanded pack, but its canonical type does not.
>
>
> This is a re-commit of r219977:
>
> r219977 was reverted in r220038 because it hit a wrong-code bug in GCC
> 4.7.2.
> (That's gcc.gnu.org/PR56135, and affects any implicit lambda-capture of
> 'this' within a template.)
>
>
> r219977 was a re-commit of r217995, r218011, and r218053:
>
> r217995 was reverted in r218058 because it hit a rejects-valid bug in MSVC.
> (Incorrect overload resolution in the presence of using-declarations.)
> It was re-committed in r219977 with a workaround for the MSVC
> rejects-valid.
>
> r218011 was a workaround for an MSVC parser bug. (Incorrect desugaring of
> unbraced range-based for loop).
>

... and this causes GCC 4.7.2 to ICE. Hell is other compilers.
_______________________________________________
cfe-commits mailing list
[email protected]
http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits

Reply via email to