diff options
| author | Anders Carlsson <andersca@mac.com> | 2009-06-06 04:14:07 +0000 |
|---|---|---|
| committer | Anders Carlsson <andersca@mac.com> | 2009-06-06 04:14:07 +0000 |
| commit | 8544647e9c17bcf88b3bb790d496ba11677506f9 (patch) | |
| tree | 7e4ab0dd4b16c55acfa9294120745b814e145e46 /clang/lib/AST/DeclCXX.cpp | |
| parent | b45e8ce69a513c7c53223af789180d73739f6794 (diff) | |
| download | bcm5719-llvm-8544647e9c17bcf88b3bb790d496ba11677506f9.tar.gz bcm5719-llvm-8544647e9c17bcf88b3bb790d496ba11677506f9.zip | |
Make ParmVarDecl::getDefaultArg() more robust, it now asserts that the argument is not unparsed. Add a new hasDefaultArg() and use it in places where getDefaultArg() was called when the argument was unparsed.
llvm-svn: 72984
Diffstat (limited to 'clang/lib/AST/DeclCXX.cpp')
| -rw-r--r-- | clang/lib/AST/DeclCXX.cpp | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/clang/lib/AST/DeclCXX.cpp b/clang/lib/AST/DeclCXX.cpp index 19f89582770..94daf484458 100644 --- a/clang/lib/AST/DeclCXX.cpp +++ b/clang/lib/AST/DeclCXX.cpp @@ -326,7 +326,7 @@ CXXConstructorDecl::isCopyConstructor(ASTContext &Context, // const volatile X&, and either there are no other parameters // or else all other parameters have default arguments (8.3.6). if ((getNumParams() < 1) || - (getNumParams() > 1 && getParamDecl(1)->getDefaultArg() == 0)) + (getNumParams() > 1 && !getParamDecl(1)->hasDefaultArg())) return false; const ParmVarDecl *Param = getParamDecl(0); @@ -363,7 +363,7 @@ bool CXXConstructorDecl::isConvertingConstructor() const { return (getNumParams() == 0 && getType()->getAsFunctionProtoType()->isVariadic()) || (getNumParams() == 1) || - (getNumParams() > 1 && getParamDecl(1)->getDefaultArg() != 0); + (getNumParams() > 1 && getParamDecl(1)->hasDefaultArg()); } CXXDestructorDecl * |

