[cfe-commits] r110663 - in /cfe/trunk: include/clang/AST/Expr.h include/clang/AST/RecursiveASTVisitor.h lib/Frontend/PCHReaderStmt.cpp lib/Frontend/PCHWriterStmt.cpp lib/Sema/Sema.h lib/Sema/SemaExpr.cpp lib/Sema/TreeTransform.h
Douglas Gregor
dgregor at apple.com
Tue Aug 10 07:35:27 PDT 2010
On Aug 10, 2010, at 1:50 AM, Abramo Bagnara wrote:
> Author: abramo
> Date: Tue Aug 10 03:50:03 2010
> New Revision: 110663
>
> URL: http://llvm.org/viewvc/llvm-project?rev=110663&view=rev
> Log:
> Added TypeLocs to TypesCompatibleExpr node.
Very nice!
> @@ -4855,27 +4855,29 @@
> template<typename Derived>
> Sema::OwningExprResult
> TreeTransform<Derived>::TransformTypesCompatibleExpr(TypesCompatibleExpr *E) {
> - QualType T1, T2;
> + TypeSourceInfo *TInfo1;
> + TypeSourceInfo *TInfo2;
> {
> // FIXME: Source location isn't quite accurate.
> TemporaryBase Rebase(*this, E->getBuiltinLoc(), DeclarationName());
>
> - T1 = getDerived().TransformType(E->getArgType1());
> - if (T1.isNull())
> + TInfo1 = getDerived().TransformType(E->getArgTInfo1());
> + if (!TInfo1)
> return SemaRef.ExprError();
>
> - T2 = getDerived().TransformType(E->getArgType2());
> - if (T2.isNull())
> + TInfo2 = getDerived().TransformType(E->getArgTInfo2());
> + if (!TInfo2)
> return SemaRef.ExprError();
> }
FWIW, the TemporaryBase object is not needed when the type transformation is performed on a TypeSourceInfo*. I went ahead and removed the (now unnused) TemporaryBase objects.
- Doug
More information about the cfe-commits
mailing list