diff options
author | John McCall <rjmccall@apple.com> | 2010-01-13 22:30:33 +0000 |
---|---|---|
committer | John McCall <rjmccall@apple.com> | 2010-01-13 22:30:33 +0000 |
commit | e8c8cd2a58b609b34359623322d9923737bd64c7 (patch) | |
tree | 2b358346838c4454abe7998d15fbb91667e20755 /clang/test/SemaCXX/overload-call.cpp | |
parent | e77d17b73afc18411c4e60c58d74b3c1f5152628 (diff) | |
download | bcm5719-llvm-e8c8cd2a58b609b34359623322d9923737bd64c7.tar.gz bcm5719-llvm-e8c8cd2a58b609b34359623322d9923737bd64c7.zip |
Don't report ambiguities in the user-defined conversion if we weren't supposed
to be considering user-defined conversions in the first place.
Doug, please review; I'm not sure what we should be doing if we see a real
ambiguity in selecting a copy constructor when otherwise suppressing
user-defined conversions.
Fixes PR6014.
llvm-svn: 93365
Diffstat (limited to 'clang/test/SemaCXX/overload-call.cpp')
-rw-r--r-- | clang/test/SemaCXX/overload-call.cpp | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/clang/test/SemaCXX/overload-call.cpp b/clang/test/SemaCXX/overload-call.cpp index 0a2508d4b80..acd1e50afe4 100644 --- a/clang/test/SemaCXX/overload-call.cpp +++ b/clang/test/SemaCXX/overload-call.cpp @@ -317,3 +317,19 @@ namespace test1 { } } +// PR 6014 +namespace test2 { + struct QFixed { + QFixed(int i); + QFixed(long i); + }; + + bool operator==(const QFixed &f, int i); + + class qrgb666 { + inline operator unsigned int () const; + + inline bool operator==(const qrgb666 &v) const; + inline bool operator!=(const qrgb666 &v) const { return !(*this == v); } + }; +} |