Alex Lorenz | 9c5c2bf | 2017-05-05 16:42:44 +0000 | [diff] [blame] | 1 | // RUN: %clang_cc1 -fsyntax-only -Wunguarded-availability -fdiagnostics-parseable-fixits -triple x86_64-apple-darwin9 %s 2>&1 | FileCheck %s |
| 2 | |
| 3 | __attribute__((availability(macos, introduced=10.12))) |
| 4 | int function(void); |
| 5 | |
| 6 | void use() { |
| 7 | function(); |
Alex Lorenz | e1fb64e | 2017-05-09 15:34:46 +0000 | [diff] [blame] | 8 | // CHECK: fix-it:{{.*}}:{[[@LINE-1]]:3-[[@LINE-1]]:3}:"if (__builtin_available(macOS 10.12, *)) {\n " |
Alex Lorenz | 9c5c2bf | 2017-05-05 16:42:44 +0000 | [diff] [blame] | 9 | // CHECK-NEXT: fix-it:{{.*}}:{[[@LINE-2]]:14-[[@LINE-2]]:14}:"\n } else {\n // Fallback on earlier versions\n }" |
| 10 | } |
Alex Lorenz | 727c21e | 2017-07-26 13:58:02 +0000 | [diff] [blame] | 11 | |
| 12 | __attribute__((availability(macos, introduced=10.12))) |
| 13 | struct New { }; |
| 14 | |
| 15 | struct NoFixit { |
| 16 | struct New field; |
| 17 | }; |
| 18 | // CHECK-NOT: API_AVAILABLE |