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
