Fix an corner-case assertion introduced by the refactoring in r112258;

when we're taking the address of a unresolvable value, it might be an
implicit member access. Fixes some Boost.Spirit regressions.

llvm-svn: 112487
This commit is contained in:
Douglas Gregor 2010-08-30 16:00:47 +00:00
parent 2f997cdedf
commit 1262b0636e
2 changed files with 13 additions and 0 deletions

View File

@ -1263,6 +1263,8 @@ ExprResult Sema::ActOnIdExpression(Scope *S,
MightBeImplicitMember = false;
else if (R.isOverloadedResult())
MightBeImplicitMember = false;
else if (R.isUnresolvableResult())
MightBeImplicitMember = true;
else
MightBeImplicitMember = isa<FieldDecl>(R.getFoundDecl());

View File

@ -121,3 +121,14 @@ namespace test4 {
}
};
}
namespace test5 {
template<typename T>
struct X {
using T::value;
T &getValue() {
return &value;
}
};
}