diff options
author | Douglas Gregor <dgregor@apple.com> | 2008-10-29 14:50:44 +0000 |
---|---|---|
committer | Douglas Gregor <dgregor@apple.com> | 2008-10-29 14:50:44 +0000 |
commit | ef30a5ff98e19b9739a55a42a7a46ce55f8d2e41 (patch) | |
tree | 22bab508a23bd1c27b1b5d7b9cec918754c62c4c /clang/lib/Sema/SemaOverload.h | |
parent | 52c65fa169fa64bd14a76b265a66baf4e0f103ef (diff) | |
download | bcm5719-llvm-ef30a5ff98e19b9739a55a42a7a46ce55f8d2e41.tar.gz bcm5719-llvm-ef30a5ff98e19b9739a55a42a7a46ce55f8d2e41.zip |
Implement overloading rules for reference binding
llvm-svn: 58381
Diffstat (limited to 'clang/lib/Sema/SemaOverload.h')
-rw-r--r-- | clang/lib/Sema/SemaOverload.h | 20 |
1 files changed, 9 insertions, 11 deletions
diff --git a/clang/lib/Sema/SemaOverload.h b/clang/lib/Sema/SemaOverload.h index 558718c0d94..c3fa425be7b 100644 --- a/clang/lib/Sema/SemaOverload.h +++ b/clang/lib/Sema/SemaOverload.h @@ -97,6 +97,14 @@ namespace clang { /// (C++ 4.2p2). bool Deprecated : 1; + /// ReferenceBinding - True when this is a reference binding + /// (C++ [over.ics.ref]). + bool ReferenceBinding : 1; + + /// DirectBinding - True when this is a reference binding that is a + /// direct binding (C++ [dcl.init.ref]). + bool DirectBinding : 1; + /// FromType - The type that this conversion is converting /// from. This is an opaque pointer that can be translated into a /// QualType. @@ -155,17 +163,7 @@ namespace clang { }; /// ConversionKind - The kind of implicit conversion sequence. - /// As usual, we use "unsigned" here because VC++ makes enum bitfields - /// signed. - unsigned ConversionKind : 2; - - /// ReferenceBinding - True when this is a reference binding - /// (C++ [over.ics.ref]). - bool ReferenceBinding : 1; - - /// DirectBinding - True when this is a reference binding that is a - /// direct binding (C++ [dcl.init.ref]). - bool DirectBinding : 1; + Kind ConversionKind; union { /// When ConversionKind == StandardConversion, provides the |