]> granicus.if.org Git - clang/commit
Objective-C properties: merge attributes when redeclaring 'readonly' as 'readwrite...
authorDouglas Gregor <dgregor@apple.com>
Thu, 10 Dec 2015 23:02:09 +0000 (23:02 +0000)
committerDouglas Gregor <dgregor@apple.com>
Thu, 10 Dec 2015 23:02:09 +0000 (23:02 +0000)
commitddd39efaedfdebb02425a4483f6ecd4a5d35866e
tree8ea7f2b2e08b1a0494a2079996d779e0dcf51637
parent8d545bc85ea00a67fde40e3777a7f6d853d8cad1
Objective-C properties: merge attributes when redeclaring 'readonly' as 'readwrite' in an extension.

r251874 stopped back-patching the AST when an Objective-C 'readonly'
property is redeclared in a class extension as 'readwrite'. However,
it did not properly handle merging of Objective-C property attributes
(e.g., getter name, ownership, atomicity) to the redeclaration,
leading to bad metadata. Merge (and check!) those property attributes
so we get the right metadata and reasonable ASTs. Fixes
rdar://problem/23823989.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@255309 91177308-0d34-0410-b5e6-96231b3b80d8
include/clang/AST/DeclObjC.h
include/clang/Basic/DiagnosticSemaKinds.td
include/clang/Sema/Sema.h
lib/Parse/ParseObjc.cpp
lib/Sema/SemaObjCProperty.cpp
test/CodeGenObjC/property-list-in-extension.m
test/SemaObjC/property-3.m
test/SemaObjC/property-atomic-redecl.m