RE: r297972 - [index/AST] Add references for ObjC getter=/setter= property attributes and related property getter/setter role fixes
[I can't find Nathan's email, so sending to the submitter, Argyrios] Hi Argyrios/Nathan, This change appears to be causing 9 tests on Windows to fail. It seems the compiler crashes when trying to run the tests. Can you please take a look? The affected tests are the following: Clang :: ASTMerge/property/test.m Clang :: Index/annotate-comments-objc.m Clang :: Index/c-index-api-loadTU-test.m Clang :: Index/index-pch-objc.m Clang :: Modules/objc-categories.m Clang :: PCH/chain-categories.m Clang :: PCH/chain-categories2.m Clang :: PCH/chain-class-extension.m Clang :: PCH/objc_property.m Recent failure of the PS4 Windows bot: http://lab.llvm.org:8011/builders/llvm-clang-lld-x86_64-scei-ps4-windows10pro-fast/builds/6902/steps/test/logs/stdio > -Original Message- > From: cfe-commits [mailto:cfe-commits-boun...@lists.llvm.org] On Behalf Of > Argyrios Kyrtzidis via cfe-commits > Sent: Thursday, March 16, 2017 11:26 > To: cfe-commits@lists.llvm.org > Subject: r297972 - [index/AST] Add references for ObjC getter=/setter= > property attributes and related property getter/setter role fixes > > Author: akirtzidis > Date: Thu Mar 16 13:25:40 2017 > New Revision: 297972 > > URL: http://llvm.org/viewvc/llvm-project?rev=297972&view=rev > Log: > [index/AST] Add references for ObjC getter=/setter= property attributes and > related property getter/setter role fixes > > This enhances the AST to keep track of locations of the names in those ObjC > property attributes, and reports them for indexing. > > Patch by Nathan Hawes! > https://reviews.llvm.org/D30907 > > Modified: > cfe/trunk/include/clang/AST/DeclObjC.h > cfe/trunk/include/clang/Sema/DeclSpec.h > cfe/trunk/include/clang/Sema/Sema.h > cfe/trunk/lib/AST/ASTImporter.cpp > cfe/trunk/lib/Index/IndexBody.cpp > cfe/trunk/lib/Index/IndexDecl.cpp > cfe/trunk/lib/Parse/ParseObjc.cpp > cfe/trunk/lib/Sema/SemaObjCProperty.cpp > cfe/trunk/lib/Serialization/ASTReaderDecl.cpp > cfe/trunk/lib/Serialization/ASTWriterDecl.cpp > cfe/trunk/test/Index/Core/index-source.m > > Modified: cfe/trunk/include/clang/AST/DeclObjC.h > URL: http://llvm.org/viewvc/llvm- > project/cfe/trunk/include/clang/AST/DeclObjC.h?rev=297972&r1=297971&r2=297972& > view=diff > == > --- cfe/trunk/include/clang/AST/DeclObjC.h (original) > +++ cfe/trunk/include/clang/AST/DeclObjC.h Thu Mar 16 13:25:40 2017 > @@ -743,6 +743,8 @@ private: > >Selector GetterName;// getter name of NULL if no getter >Selector SetterName;// setter name of NULL if no setter > + SourceLocation GetterNameLoc; // location of the getter attribute's > + value SourceLocation SetterNameLoc; // location of the setter > + attribute's value > >ObjCMethodDecl *GetterMethodDecl; // Declaration of getter instance method >ObjCMethodDecl *SetterMethodDecl; // Declaration of setter instance method > @@ -855,10 +857,18 @@ public: >} > >Selector getGetterName() const { return GetterName; } > - void setGetterName(Selector Sel) { GetterName = Sel; } > + SourceLocation getGetterNameLoc() const { return GetterNameLoc; } > + void setGetterName(Selector Sel, SourceLocation Loc) { > +GetterName = Sel; > +GetterNameLoc = Loc; > + } > >Selector getSetterName() const { return SetterName; } > - void setSetterName(Selector Sel) { SetterName = Sel; } > + SourceLocation getSetterNameLoc() const { return SetterNameLoc; } > + void setSetterName(Selector Sel, SourceLocation Loc) { > +SetterName = Sel; > +SetterNameLoc = Loc; > + } > >ObjCMethodDecl *getGetterMethodDecl() const { return GetterMethodDecl; } >void setGetterMethodDecl(ObjCMethodDecl *gDecl) { GetterMethodDecl = gDecl; > } > > Modified: cfe/trunk/include/clang/Sema/DeclSpec.h > URL: http://llvm.org/viewvc/llvm- > project/cfe/trunk/include/clang/Sema/DeclSpec.h?rev=297972&r1=297971&r2=297972 > &view=diff > == > --- cfe/trunk/include/clang/Sema/DeclSpec.h (original) > +++ cfe/trunk/include/clang/Sema/DeclSpec.h Thu Mar 16 13:25:40 2017 > @@ -861,11 +861,19 @@ public: > >const IdentifierInfo *getGetterName() const { return GetterName; } >IdentifierInfo *getGetterName() { return GetterName; } > - void setGetterName(IdentifierInfo *name) { GetterName = name; } > + SourceLocation getGetterNameLoc() const { return GetterNameLoc; } > + void setGetterName(IdentifierInfo *name, SourceLocation loc) { > +GetterName = name; > +GetterNameLoc = loc; > + } > >const IdentifierInfo *getSetterName() const { return SetterName; } >IdentifierInfo *getSetterName() { return SetterName; } > - void setSetterName(IdentifierInfo *name) { SetterName = name; } > + SourceLocation getSetterNameLoc() const { return SetterNameLoc; } > + void setSetterName(IdentifierInfo *name, SourceLocation loc) { > +SetterName = name; > +
Re: r297972 - [index/AST] Add references for ObjC getter=/setter= property attributes and related property getter/setter role fixes
I think I know what the issue is, preparing a fix. > On Mar 16, 2017, at 4:38 PM, Yung, Douglas wrote: > > [I can't find Nathan's email, so sending to the submitter, Argyrios] > > Hi Argyrios/Nathan, > > This change appears to be causing 9 tests on Windows to fail. It seems the > compiler crashes when trying to run the tests. Can you please take a look? > > The affected tests are the following: > > Clang :: ASTMerge/property/test.m > Clang :: Index/annotate-comments-objc.m > Clang :: Index/c-index-api-loadTU-test.m > Clang :: Index/index-pch-objc.m > Clang :: Modules/objc-categories.m > Clang :: PCH/chain-categories.m > Clang :: PCH/chain-categories2.m > Clang :: PCH/chain-class-extension.m > Clang :: PCH/objc_property.m > > Recent failure of the PS4 Windows bot: > http://lab.llvm.org:8011/builders/llvm-clang-lld-x86_64-scei-ps4-windows10pro-fast/builds/6902/steps/test/logs/stdio > >> -Original Message- >> From: cfe-commits [mailto:cfe-commits-boun...@lists.llvm.org] On Behalf Of >> Argyrios Kyrtzidis via cfe-commits >> Sent: Thursday, March 16, 2017 11:26 >> To: cfe-commits@lists.llvm.org >> Subject: r297972 - [index/AST] Add references for ObjC getter=/setter= >> property attributes and related property getter/setter role fixes >> >> Author: akirtzidis >> Date: Thu Mar 16 13:25:40 2017 >> New Revision: 297972 >> >> URL: http://llvm.org/viewvc/llvm-project?rev=297972&view=rev >> Log: >> [index/AST] Add references for ObjC getter=/setter= property attributes and >> related property getter/setter role fixes >> >> This enhances the AST to keep track of locations of the names in those ObjC >> property attributes, and reports them for indexing. >> >> Patch by Nathan Hawes! >> https://reviews.llvm.org/D30907 >> >> Modified: >>cfe/trunk/include/clang/AST/DeclObjC.h >>cfe/trunk/include/clang/Sema/DeclSpec.h >>cfe/trunk/include/clang/Sema/Sema.h >>cfe/trunk/lib/AST/ASTImporter.cpp >>cfe/trunk/lib/Index/IndexBody.cpp >>cfe/trunk/lib/Index/IndexDecl.cpp >>cfe/trunk/lib/Parse/ParseObjc.cpp >>cfe/trunk/lib/Sema/SemaObjCProperty.cpp >>cfe/trunk/lib/Serialization/ASTReaderDecl.cpp >>cfe/trunk/lib/Serialization/ASTWriterDecl.cpp >>cfe/trunk/test/Index/Core/index-source.m >> >> Modified: cfe/trunk/include/clang/AST/DeclObjC.h >> URL: http://llvm.org/viewvc/llvm- >> project/cfe/trunk/include/clang/AST/DeclObjC.h?rev=297972&r1=297971&r2=297972& >> view=diff >> == >> --- cfe/trunk/include/clang/AST/DeclObjC.h (original) >> +++ cfe/trunk/include/clang/AST/DeclObjC.h Thu Mar 16 13:25:40 2017 >> @@ -743,6 +743,8 @@ private: >> >> Selector GetterName;// getter name of NULL if no getter >> Selector SetterName;// setter name of NULL if no setter >> + SourceLocation GetterNameLoc; // location of the getter attribute's >> + value SourceLocation SetterNameLoc; // location of the setter >> + attribute's value >> >> ObjCMethodDecl *GetterMethodDecl; // Declaration of getter instance method >> ObjCMethodDecl *SetterMethodDecl; // Declaration of setter instance method >> @@ -855,10 +857,18 @@ public: >> } >> >> Selector getGetterName() const { return GetterName; } >> - void setGetterName(Selector Sel) { GetterName = Sel; } >> + SourceLocation getGetterNameLoc() const { return GetterNameLoc; } >> + void setGetterName(Selector Sel, SourceLocation Loc) { >> +GetterName = Sel; >> +GetterNameLoc = Loc; >> + } >> >> Selector getSetterName() const { return SetterName; } >> - void setSetterName(Selector Sel) { SetterName = Sel; } >> + SourceLocation getSetterNameLoc() const { return SetterNameLoc; } >> + void setSetterName(Selector Sel, SourceLocation Loc) { >> +SetterName = Sel; >> +SetterNameLoc = Loc; >> + } >> >> ObjCMethodDecl *getGetterMethodDecl() const { return GetterMethodDecl; } >> void setGetterMethodDecl(ObjCMethodDecl *gDecl) { GetterMethodDecl = gDecl; >> } >> >> Modified: cfe/trunk/include/clang/Sema/DeclSpec.h >> URL: http://llvm.org/viewvc/llvm- >> project/cfe/trunk/include/clang/Sema/DeclSpec.h?rev=297972&r1=297971&r2=297972 >> &view=diff >> == >> --- cfe/trunk/include/clang/Sema/DeclSpec.h (original) >> +++ cfe/trunk/include/clang/Sema/DeclSpec.h Thu Mar 16 13:25:40 2017 >> @@ -861,11 +861,19 @@ public: >> >> const IdentifierInfo *getGetterName() const { return GetterName; } >> IdentifierInfo *getGetterName() { return GetterName; } >> - void setGetterName(IdentifierInfo *name) { GetterName = name; } >> + SourceLocation getGetterNameLoc() const { return GetterNameLoc; } >> + void setGetterName(IdentifierInfo *name, SourceLocation loc) { >> +GetterName = name; >> +GetterNameLoc = loc; >> + } >> >> const IdentifierInfo *getSetterName() const { return SetterName; } >> IdentifierInfo *getSetterName() { return SetterName; } >> - void setS
Re: r297972 - [index/AST] Add references for ObjC getter=/setter= property attributes and related property getter/setter role fixes
I have high hopes r298027 will fix this. > On Mar 16, 2017, at 5:42 PM, Argyrios Kyrtzidis wrote: > > I think I know what the issue is, preparing a fix. > > >> On Mar 16, 2017, at 4:38 PM, Yung, Douglas wrote: >> >> [I can't find Nathan's email, so sending to the submitter, Argyrios] >> >> Hi Argyrios/Nathan, >> >> This change appears to be causing 9 tests on Windows to fail. It seems the >> compiler crashes when trying to run the tests. Can you please take a look? >> >> The affected tests are the following: >> >> Clang :: ASTMerge/property/test.m >> Clang :: Index/annotate-comments-objc.m >> Clang :: Index/c-index-api-loadTU-test.m >> Clang :: Index/index-pch-objc.m >> Clang :: Modules/objc-categories.m >> Clang :: PCH/chain-categories.m >> Clang :: PCH/chain-categories2.m >> Clang :: PCH/chain-class-extension.m >> Clang :: PCH/objc_property.m >> >> Recent failure of the PS4 Windows bot: >> http://lab.llvm.org:8011/builders/llvm-clang-lld-x86_64-scei-ps4-windows10pro-fast/builds/6902/steps/test/logs/stdio >> >>> -Original Message- >>> From: cfe-commits [mailto:cfe-commits-boun...@lists.llvm.org] On Behalf Of >>> Argyrios Kyrtzidis via cfe-commits >>> Sent: Thursday, March 16, 2017 11:26 >>> To: cfe-commits@lists.llvm.org >>> Subject: r297972 - [index/AST] Add references for ObjC getter=/setter= >>> property attributes and related property getter/setter role fixes >>> >>> Author: akirtzidis >>> Date: Thu Mar 16 13:25:40 2017 >>> New Revision: 297972 >>> >>> URL: http://llvm.org/viewvc/llvm-project?rev=297972&view=rev >>> Log: >>> [index/AST] Add references for ObjC getter=/setter= property attributes and >>> related property getter/setter role fixes >>> >>> This enhances the AST to keep track of locations of the names in those ObjC >>> property attributes, and reports them for indexing. >>> >>> Patch by Nathan Hawes! >>> https://reviews.llvm.org/D30907 >>> >>> Modified: >>> cfe/trunk/include/clang/AST/DeclObjC.h >>> cfe/trunk/include/clang/Sema/DeclSpec.h >>> cfe/trunk/include/clang/Sema/Sema.h >>> cfe/trunk/lib/AST/ASTImporter.cpp >>> cfe/trunk/lib/Index/IndexBody.cpp >>> cfe/trunk/lib/Index/IndexDecl.cpp >>> cfe/trunk/lib/Parse/ParseObjc.cpp >>> cfe/trunk/lib/Sema/SemaObjCProperty.cpp >>> cfe/trunk/lib/Serialization/ASTReaderDecl.cpp >>> cfe/trunk/lib/Serialization/ASTWriterDecl.cpp >>> cfe/trunk/test/Index/Core/index-source.m >>> >>> Modified: cfe/trunk/include/clang/AST/DeclObjC.h >>> URL: http://llvm.org/viewvc/llvm- >>> project/cfe/trunk/include/clang/AST/DeclObjC.h?rev=297972&r1=297971&r2=297972& >>> view=diff >>> == >>> --- cfe/trunk/include/clang/AST/DeclObjC.h (original) >>> +++ cfe/trunk/include/clang/AST/DeclObjC.h Thu Mar 16 13:25:40 2017 >>> @@ -743,6 +743,8 @@ private: >>> >>> Selector GetterName;// getter name of NULL if no getter >>> Selector SetterName;// setter name of NULL if no setter >>> + SourceLocation GetterNameLoc; // location of the getter attribute's >>> + value SourceLocation SetterNameLoc; // location of the setter >>> + attribute's value >>> >>> ObjCMethodDecl *GetterMethodDecl; // Declaration of getter instance method >>> ObjCMethodDecl *SetterMethodDecl; // Declaration of setter instance method >>> @@ -855,10 +857,18 @@ public: >>> } >>> >>> Selector getGetterName() const { return GetterName; } >>> - void setGetterName(Selector Sel) { GetterName = Sel; } >>> + SourceLocation getGetterNameLoc() const { return GetterNameLoc; } >>> + void setGetterName(Selector Sel, SourceLocation Loc) { >>> +GetterName = Sel; >>> +GetterNameLoc = Loc; >>> + } >>> >>> Selector getSetterName() const { return SetterName; } >>> - void setSetterName(Selector Sel) { SetterName = Sel; } >>> + SourceLocation getSetterNameLoc() const { return SetterNameLoc; } >>> + void setSetterName(Selector Sel, SourceLocation Loc) { >>> +SetterName = Sel; >>> +SetterNameLoc = Loc; >>> + } >>> >>> ObjCMethodDecl *getGetterMethodDecl() const { return GetterMethodDecl; } >>> void setGetterMethodDecl(ObjCMethodDecl *gDecl) { GetterMethodDecl = gDecl; >>> } >>> >>> Modified: cfe/trunk/include/clang/Sema/DeclSpec.h >>> URL: http://llvm.org/viewvc/llvm- >>> project/cfe/trunk/include/clang/Sema/DeclSpec.h?rev=297972&r1=297971&r2=297972 >>> &view=diff >>> == >>> --- cfe/trunk/include/clang/Sema/DeclSpec.h (original) >>> +++ cfe/trunk/include/clang/Sema/DeclSpec.h Thu Mar 16 13:25:40 2017 >>> @@ -861,11 +861,19 @@ public: >>> >>> const IdentifierInfo *getGetterName() const { return GetterName; } >>> IdentifierInfo *getGetterName() { return GetterName; } >>> - void setGetterName(IdentifierInfo *name) { GetterName = name; } >>> + SourceLocation getGetterNameLoc() const { return GetterNameLoc; } >>> + void setGetterName(IdentifierInfo *name, SourceLocation loc) { >>> +Gette
RE: r297972 - [index/AST] Add references for ObjC getter=/setter= property attributes and related property getter/setter role fixes
Your change does seem to have done the trick. Thanks! Douglas Yung > -Original Message- > From: Argyrios Kyrtzidis [mailto:akyr...@gmail.com] > Sent: Thursday, March 16, 2017 18:03 > To: Yung, Douglas > Cc: cfe-commits > Subject: Re: r297972 - [index/AST] Add references for ObjC getter=/setter= > property attributes and related property getter/setter role fixes > > I have high hopes r298027 will fix this. > > > On Mar 16, 2017, at 5:42 PM, Argyrios Kyrtzidis wrote: > > > > I think I know what the issue is, preparing a fix. > > > > > >> On Mar 16, 2017, at 4:38 PM, Yung, Douglas wrote: > >> > >> [I can't find Nathan's email, so sending to the submitter, Argyrios] > >> > >> Hi Argyrios/Nathan, > >> > >> This change appears to be causing 9 tests on Windows to fail. It seems the > compiler crashes when trying to run the tests. Can you please take a look? > >> > >> The affected tests are the following: > >> > >> Clang :: ASTMerge/property/test.m > >> Clang :: Index/annotate-comments-objc.m Clang :: > >> Index/c-index-api-loadTU-test.m Clang :: Index/index-pch-objc.m Clang > >> :: Modules/objc-categories.m Clang :: PCH/chain-categories.m Clang :: > >> PCH/chain-categories2.m Clang :: PCH/chain-class-extension.m Clang :: > >> PCH/objc_property.m > >> > >> Recent failure of the PS4 Windows bot: > >> http://lab.llvm.org:8011/builders/llvm-clang-lld-x86_64-scei-ps4-wind > >> ows10pro-fast/builds/6902/steps/test/logs/stdio > >> > >>> -Original Message- > >>> From: cfe-commits [mailto:cfe-commits-boun...@lists.llvm.org] On > >>> Behalf Of Argyrios Kyrtzidis via cfe-commits > >>> Sent: Thursday, March 16, 2017 11:26 > >>> To: cfe-commits@lists.llvm.org > >>> Subject: r297972 - [index/AST] Add references for ObjC > >>> getter=/setter= property attributes and related property > >>> getter/setter role fixes > >>> > >>> Author: akirtzidis > >>> Date: Thu Mar 16 13:25:40 2017 > >>> New Revision: 297972 > >>> > >>> URL: http://llvm.org/viewvc/llvm-project?rev=297972&view=rev > >>> Log: > >>> [index/AST] Add references for ObjC getter=/setter= property > >>> attributes and related property getter/setter role fixes > >>> > >>> This enhances the AST to keep track of locations of the names in > >>> those ObjC property attributes, and reports them for indexing. > >>> > >>> Patch by Nathan Hawes! > >>> https://reviews.llvm.org/D30907 > >>> > >>> Modified: > >>> cfe/trunk/include/clang/AST/DeclObjC.h > >>> cfe/trunk/include/clang/Sema/DeclSpec.h > >>> cfe/trunk/include/clang/Sema/Sema.h > >>> cfe/trunk/lib/AST/ASTImporter.cpp > >>> cfe/trunk/lib/Index/IndexBody.cpp > >>> cfe/trunk/lib/Index/IndexDecl.cpp > >>> cfe/trunk/lib/Parse/ParseObjc.cpp > >>> cfe/trunk/lib/Sema/SemaObjCProperty.cpp > >>> cfe/trunk/lib/Serialization/ASTReaderDecl.cpp > >>> cfe/trunk/lib/Serialization/ASTWriterDecl.cpp > >>> cfe/trunk/test/Index/Core/index-source.m > >>> > >>> Modified: cfe/trunk/include/clang/AST/DeclObjC.h > >>> URL: http://llvm.org/viewvc/llvm- > >>> project/cfe/trunk/include/clang/AST/DeclObjC.h?rev=297972&r1=297971& > >>> r2=297972& > >>> view=diff > >>> > >>> == > >>> --- cfe/trunk/include/clang/AST/DeclObjC.h (original) > >>> +++ cfe/trunk/include/clang/AST/DeclObjC.h Thu Mar 16 13:25:40 2017 > >>> @@ -743,6 +743,8 @@ private: > >>> > >>> Selector GetterName;// getter name of NULL if no getter > >>> Selector SetterName;// setter name of NULL if no setter > >>> + SourceLocation GetterNameLoc; // location of the getter > >>> + attribute's value SourceLocation SetterNameLoc; // location of > >>> + the setter attribute's value > >>> > >>> ObjCMethodDecl *GetterMethodDecl; // Declaration of getter instance > >>> method ObjCMethodDecl *SetterMethodDecl; // Declaration of setter > >>> instance method @@ -855,10 +857,18 @@ public: > >>> } > >>> > >>> Selector getGetterName() const { return GetterNa