[cfe-dev] [GSoC] "C++0x Lambda functions implementation"

Douglas Gregor dgregor at apple.com
Mon Apr 11 17:32:28 PDT 2011


On Mar 31, 2011, at 12:51 PM, Richard Smith wrote:

> On Tue, 29 Mar 2011 20:54, Nicola Gigante wrote:
>> Title: C++0x Lambda functions implementation
>> 
>> 1. Proposal:
>> The C++ committee recently approved the new C++ 2011 international
>> standard, adding a lot of new features to the language. The clang compiler
>> supports a part of them, including the most relevant ones such as variadic
>> templates and r-value references. However, a lot of other new features
>> still need to be implemented. This proposal is about implementing the new
>> lambda functions. Although it's not the most important feature of the new
>> standard, it's already implemented in other compilers such as gcc and
>> VC++, and I think clang should stay up-to-date.
>> 
>> This project will implement lambda functions in Clang, including other
>> needed C++0x features. In particular, this will imply the implementation
>> of at least the new "lately-specified return type" syntax. The project
>> will cover all the aspect of the implementation, from the parser to code
>> generation, including full compliance with the international standard
>> document and a full set of unit tests.
> 
> Fantastic. I've been working through some of the other new C++11 features
> (auto, for-range and alias-declaration so far) and would love to see more
> people working on this stuff.
> 
> As far as I'm aware, the late-specified return types feature is complete,
> other than updating the external website. I fixed all the issues I could
> find with it and added a bunch of tests as part of the 'auto' work. We're
> already advertising support for it via __has_feature(cxx_trailing_return).
> (One minor thing: we don't appear to have any tests checking that we
> create the correct mangled names).

We have bugs in the area of name mangling for late-specified return types. In particular, we don't implement name-mangling rules for references to function parameters in the late-specified return type.

	- Doug



More information about the cfe-dev mailing list