diff options
Diffstat (limited to 'clang/lib/Sema/SemaExpr.cpp')
| -rw-r--r-- | clang/lib/Sema/SemaExpr.cpp | 5 | 
1 files changed, 4 insertions, 1 deletions
| diff --git a/clang/lib/Sema/SemaExpr.cpp b/clang/lib/Sema/SemaExpr.cpp index a36bcf58806..8cbbca3fbf0 100644 --- a/clang/lib/Sema/SemaExpr.cpp +++ b/clang/lib/Sema/SemaExpr.cpp @@ -2876,8 +2876,11 @@ QualType Sema::CheckAddressOfOperand(Expr *op, SourceLocation OpLoc) {            << "register variable" << op->getSourceRange();          return QualType();        } -    } else if (isa<OverloadedFunctionDecl>(dcl)) +    } else if (isa<OverloadedFunctionDecl>(dcl)) {        return Context.OverloadTy; +    } else if (isa<FieldDecl>(dcl)) { +      // Okay: we can take the address of a field. +    }      else         assert(0 && "Unknown/unexpected decl type");    } | 

