This revision was automatically updated to reflect the committed changes. Closed by commit rL277378: [ObjC Availability] Fix partial-availability false positive introduced in… (authored by epilk).
Changed prior to commit: https://reviews.llvm.org/D23024?vs=66348&id=66370#toc Repository: rL LLVM https://reviews.llvm.org/D23024 Files: cfe/trunk/lib/Sema/SemaDeclAttr.cpp cfe/trunk/test/SemaObjC/attr-availability.m Index: cfe/trunk/lib/Sema/SemaDeclAttr.cpp =================================================================== --- cfe/trunk/lib/Sema/SemaDeclAttr.cpp +++ cfe/trunk/lib/Sema/SemaDeclAttr.cpp @@ -6505,5 +6505,5 @@ DeclVersion = AA->getIntroduced(); } - return DeclVersion; + return std::max(DeclVersion, Context.getTargetInfo().getPlatformMinVersion()); } Index: cfe/trunk/test/SemaObjC/attr-availability.m =================================================================== --- cfe/trunk/test/SemaObjC/attr-availability.m +++ cfe/trunk/test/SemaObjC/attr-availability.m @@ -297,6 +297,7 @@ #if defined(WARN_PARTIAL) +int fn_10_5() __attribute__((availability(macosx, introduced=10.5))); int fn_10_7() __attribute__((availability(macosx, introduced=10.7))); // expected-note{{marked partial here}} int fn_10_8() __attribute__((availability(macosx, introduced=10.8))) { // expected-note{{marked partial here}} return fn_10_7(); @@ -324,4 +325,8 @@ -(void)method4 { fn_10_8(); } @end +int old_func() __attribute__((availability(macos, introduced=10.4))) { + fn_10_5(); +} + #endif
Index: cfe/trunk/lib/Sema/SemaDeclAttr.cpp =================================================================== --- cfe/trunk/lib/Sema/SemaDeclAttr.cpp +++ cfe/trunk/lib/Sema/SemaDeclAttr.cpp @@ -6505,5 +6505,5 @@ DeclVersion = AA->getIntroduced(); } - return DeclVersion; + return std::max(DeclVersion, Context.getTargetInfo().getPlatformMinVersion()); } Index: cfe/trunk/test/SemaObjC/attr-availability.m =================================================================== --- cfe/trunk/test/SemaObjC/attr-availability.m +++ cfe/trunk/test/SemaObjC/attr-availability.m @@ -297,6 +297,7 @@ #if defined(WARN_PARTIAL) +int fn_10_5() __attribute__((availability(macosx, introduced=10.5))); int fn_10_7() __attribute__((availability(macosx, introduced=10.7))); // expected-note{{marked partial here}} int fn_10_8() __attribute__((availability(macosx, introduced=10.8))) { // expected-note{{marked partial here}} return fn_10_7(); @@ -324,4 +325,8 @@ -(void)method4 { fn_10_8(); } @end +int old_func() __attribute__((availability(macos, introduced=10.4))) { + fn_10_5(); +} + #endif
_______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits