diff options
| author | Anders Carlsson <andersca@mac.com> | 2009-08-27 17:14:02 +0000 |
|---|---|---|
| committer | Anders Carlsson <andersca@mac.com> | 2009-08-27 17:14:02 +0000 |
| commit | 5ec4abf2684ddef0b50fbc6fde3d579f3ad8faba (patch) | |
| tree | 6fef24b4a94576804a4881209866bd7671238953 /clang/lib/Sema/SemaOverload.cpp | |
| parent | 962c3747818be49934894f1a36dd2ec06b8031f1 (diff) | |
| download | bcm5719-llvm-5ec4abf2684ddef0b50fbc6fde3d579f3ad8faba.tar.gz bcm5719-llvm-5ec4abf2684ddef0b50fbc6fde3d579f3ad8faba.zip | |
Revert the flags change for now, I have a better idea for this.
llvm-svn: 80255
Diffstat (limited to 'clang/lib/Sema/SemaOverload.cpp')
| -rw-r--r-- | clang/lib/Sema/SemaOverload.cpp | 18 |
1 files changed, 7 insertions, 11 deletions
diff --git a/clang/lib/Sema/SemaOverload.cpp b/clang/lib/Sema/SemaOverload.cpp index 2c8c7317975..dde5c287236 100644 --- a/clang/lib/Sema/SemaOverload.cpp +++ b/clang/lib/Sema/SemaOverload.cpp @@ -408,11 +408,10 @@ Sema::IsOverload(FunctionDecl *New, Decl* OldD, /// If @p ForceRValue, then overloading is performed as if From was an rvalue, /// no matter its actual lvalueness. ImplicitConversionSequence -Sema::TryImplicitConversion(Expr* From, QualType ToType, unsigned Flags) { - bool SuppressUserConversions = Flags & ORF_SuppressUserConversions; - bool AllowExplicit = Flags & ORF_AllowExplicit; - bool ForceRValue = Flags & ORF_ForceRValue; - +Sema::TryImplicitConversion(Expr* From, QualType ToType, + bool SuppressUserConversions, + bool AllowExplicit, bool ForceRValue) +{ ImplicitConversionSequence ICS; if (IsStandardConversion(From, ToType, ICS.Standard)) ICS.ConversionKind = ImplicitConversionSequence::StandardConversion; @@ -1930,11 +1929,8 @@ Sema::TryCopyInitialization(Expr *From, QualType ToType, /*AllowExplicit=*/false, ForceRValue); return ICS; } else { - unsigned Flags = ORF_None; - if (SuppressUserConversions) Flags |= ORF_SuppressUserConversions; - if (ForceRValue) Flags |= ORF_ForceRValue; - - return TryImplicitConversion(From, ToType, Flags); + return TryImplicitConversion(From, ToType, SuppressUserConversions, + ForceRValue); } } @@ -2068,7 +2064,7 @@ Sema::PerformObjectArgumentInitialization(Expr *&From, CXXMethodDecl *Method) { /// TryContextuallyConvertToBool - Attempt to contextually convert the /// expression From to bool (C++0x [conv]p3). ImplicitConversionSequence Sema::TryContextuallyConvertToBool(Expr *From) { - return TryImplicitConversion(From, Context.BoolTy, ORF_AllowExplicit); + return TryImplicitConversion(From, Context.BoolTy, false, true); } /// PerformContextuallyConvertToBool - Perform a contextual conversion |

