diff options
| author | Anders Carlsson <andersca@mac.com> | 2009-06-16 03:37:31 +0000 |
|---|---|---|
| committer | Anders Carlsson <andersca@mac.com> | 2009-06-16 03:37:31 +0000 |
| commit | a42ab8f3d5f402f8f08a9f3573e1e0b8ef03ad82 (patch) | |
| tree | 96520a7ca85a6bad348f96262752713e20130469 /clang/lib/Sema/SemaDeclCXX.cpp | |
| parent | 14491abe48e94d8f48c5178b8682317c9575a907 (diff) | |
| download | bcm5719-llvm-a42ab8f3d5f402f8f08a9f3573e1e0b8ef03ad82.tar.gz bcm5719-llvm-a42ab8f3d5f402f8f08a9f3573e1e0b8ef03ad82.zip | |
Handle temporaries in default arguments.
llvm-svn: 73462
Diffstat (limited to 'clang/lib/Sema/SemaDeclCXX.cpp')
| -rw-r--r-- | clang/lib/Sema/SemaDeclCXX.cpp | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/clang/lib/Sema/SemaDeclCXX.cpp b/clang/lib/Sema/SemaDeclCXX.cpp index 8f64e78c522..70057a34dfb 100644 --- a/clang/lib/Sema/SemaDeclCXX.cpp +++ b/clang/lib/Sema/SemaDeclCXX.cpp @@ -147,8 +147,11 @@ Sema::ActOnParamDefaultArgument(DeclPtrTy param, SourceLocation EqualLoc, return; } + DefaultArgPtr = MaybeCreateCXXExprWithTemporaries(DefaultArg.take(), + /*DestroyTemps=*/false); + // Okay: add the default argument to the parameter - Param->setDefaultArg(DefaultArg.take()); + Param->setDefaultArg(DefaultArgPtr); } /// ActOnParamUnparsedDefaultArgument - We've seen a default |

