Thanks for committing the last patch however there's another edge case not covered by the previous patch:
struct VirualDestrClass
{
VirualDestrClass(int arg);
virtual ~VirualDestrClass();
};
struct ConstrWithCleanupsClass
{
ConstrWithCleanupsClass(const VirualDestrClass& cplx =
VirualDestrClass(42));
};
ConstrWithCleanupsClass cwcNoArg;
Here cwcNoArg has it's CXXConstructExpr wrapped in a ExprWithCleanups (to
handle the cleanup of the temporary). As the old code didn't look through
the implicit expressions the printed result was this:
ConstrWithCleanupsClass cwcNoArg();
Patch attached with fix and new test-cases for review and commit if it
LGTY. All tests passed locally.
- Will.
default_arg_implicitexpr_fix.patch
Description: Binary data
_______________________________________________ cfe-commits mailing list [email protected] http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits
