On 16.02.2012, at 14:51, Eli Friedman wrote:

> On Thu, Feb 16, 2012 at 2:58 AM, Sebastian Redl
> <[email protected]> wrote:
>> Author: cornedbee
>> Date: Thu Feb 16 04:58:10 2012
>> New Revision: 150682
>> 
>> URL: http://llvm.org/viewvc/llvm-project?rev=150682&view=rev
>> Log:
>> Make CXXNewExpr contain only a single initialier, and not hold the used 
>> constructor itself.
>> 
>> Holding the constructor directly makes no sense when list-initialized arrays 
>> come into play. The constructor is now held in a CXXConstructExpr, if 
>> construction is what is done. The new design can also distinguish properly 
>> between list-initialization and direct-initialization, as well as implicit 
>> default-initialization constructors and explicit value-initialization 
>> constructors. Finally, doing it this way removes redundance from the AST 
>> because CXXNewExpr doesn't try to handle both the allocation and the 
>> initialization responsibilities.
> 
> Does this have any effect on http://llvm.org/bugs/show_bug.cgi?id=11757 ?

No, it still creates the copy. But now it should be possible to the set 
elidable flag on the copy construction (CXXNewExpr didn't have such a flag) and 
then get rid of the copy.

Sebastian
_______________________________________________
cfe-commits mailing list
[email protected]
http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits

Reply via email to