Test case? Perhaps using the c-index-test annotate tokens feature? On Oct 29, 2011 2:00 PM, "Abramo Bagnara" <[email protected]> wrote:
> Author: abramo > Date: Sat Oct 29 15:52:52 2011 > New Revision: 143295 > > URL: http://llvm.org/viewvc/llvm-project?rev=143295&view=rev > Log: > Fixed FriendDecl source locations. > > Modified: > cfe/trunk/include/clang/Sema/Sema.h > cfe/trunk/lib/Sema/SemaDeclCXX.cpp > cfe/trunk/lib/Sema/SemaTemplateInstantiateDecl.cpp > > Modified: cfe/trunk/include/clang/Sema/Sema.h > URL: > http://llvm.org/viewvc/llvm-project/cfe/trunk/include/clang/Sema/Sema.h?rev=143295&r1=143294&r2=143295&view=diff > > ============================================================================== > --- cfe/trunk/include/clang/Sema/Sema.h (original) > +++ cfe/trunk/include/clang/Sema/Sema.h Sat Oct 29 15:52:52 2011 > @@ -3611,7 +3611,8 @@ > Expr *AssertMessageExpr, > SourceLocation RParenLoc); > > - FriendDecl *CheckFriendTypeDecl(SourceLocation FriendLoc, > + FriendDecl *CheckFriendTypeDecl(SourceLocation Loc, > + SourceLocation FriendLoc, > TypeSourceInfo *TSInfo); > Decl *ActOnFriendTypeDecl(Scope *S, const DeclSpec &DS, > MultiTemplateParamsArg TemplateParams); > > Modified: cfe/trunk/lib/Sema/SemaDeclCXX.cpp > URL: > http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Sema/SemaDeclCXX.cpp?rev=143295&r1=143294&r2=143295&view=diff > > ============================================================================== > --- cfe/trunk/lib/Sema/SemaDeclCXX.cpp (original) > +++ cfe/trunk/lib/Sema/SemaDeclCXX.cpp Sat Oct 29 15:52:52 2011 > @@ -9646,7 +9646,8 @@ > /// \brief Perform semantic analysis of the given friend type declaration. > /// > /// \returns A friend declaration that. > -FriendDecl *Sema::CheckFriendTypeDecl(SourceLocation FriendLoc, > +FriendDecl *Sema::CheckFriendTypeDecl(SourceLocation Loc, > + SourceLocation FriendLoc, > TypeSourceInfo *TSInfo) { > assert(TSInfo && "NULL TypeSourceInfo for friend type declaration"); > > @@ -9703,7 +9704,7 @@ > // FIXME: C++0x has some syntactic restrictions on friend type > declarations > // in [class.friend]p3 that we do not implement. > > - return FriendDecl::Create(Context, CurContext, FriendLoc, TSInfo, > FriendLoc); > + return FriendDecl::Create(Context, CurContext, Loc, TSInfo, FriendLoc); > } > > /// Handle a friend tag declaration where the scope specifier was > @@ -9900,7 +9901,7 @@ > TSI, > DS.getFriendSpecLoc()); > else > - D = CheckFriendTypeDecl(DS.getFriendSpecLoc(), TSI); > + D = CheckFriendTypeDecl(Loc, DS.getFriendSpecLoc(), TSI); > > if (!D) > return 0; > > Modified: cfe/trunk/lib/Sema/SemaTemplateInstantiateDecl.cpp > URL: > http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Sema/SemaTemplateInstantiateDecl.cpp?rev=143295&r1=143294&r2=143295&view=diff > > ============================================================================== > --- cfe/trunk/lib/Sema/SemaTemplateInstantiateDecl.cpp (original) > +++ cfe/trunk/lib/Sema/SemaTemplateInstantiateDecl.cpp Sat Oct 29 15:52:52 > 2011 > @@ -552,7 +552,8 @@ > if (!InstTy) > return 0; > > - FriendDecl *FD = SemaRef.CheckFriendTypeDecl(D->getFriendLoc(), > InstTy); > + FriendDecl *FD = SemaRef.CheckFriendTypeDecl(D->getLocation(), > + D->getFriendLoc(), > InstTy); > if (!FD) > return 0; > > > > _______________________________________________ > cfe-commits mailing list > [email protected] > http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits >
_______________________________________________ cfe-commits mailing list [email protected] http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits
