RE: r297972 - [index/AST] Add references for ObjC getter=/setter= property attributes and related property getter/setter role fixes

2017-03-16 Thread Yung, Douglas via cfe-commits
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 <akyr...@gmail.com> wrote:
> >
> > I think I know what the issue is, preparing a fix.
> >
> >
> >> On Mar 16, 2017, at 4:38 PM, Yung, Douglas <douglas.y...@sony.com> 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=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=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; }

Re: r297972 - [index/AST] Add references for ObjC getter=/setter= property attributes and related property getter/setter role fixes

2017-03-16 Thread Argyrios Kyrtzidis via cfe-commits
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=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=297971=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=297971=297972
>>> =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 

Re: r297972 - [index/AST] Add references for ObjC getter=/setter= property attributes and related property getter/setter role fixes

2017-03-16 Thread Argyrios Kyrtzidis via cfe-commits
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=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=297971=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=297971=297972
>> =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 

RE: r297972 - [index/AST] Add references for ObjC getter=/setter= property attributes and related property getter/setter role fixes

2017-03-16 Thread Yung, Douglas via cfe-commits
[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=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=297971=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=297971=297972
> =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;
> +SetterNameLoc = loc;