|  | // RUN: %clang_cc1 -triple x86_64-apple-darwin10 -emit-llvm -o - %s | FileCheck %s | 
|  | // RUN: %clang_cc1 -triple armv7-apple-darwin10 -emit-llvm  -o - %s | FileCheck %s | 
|  | // RUN: %clang_cc1 -triple arm64-apple-ios -emit-llvm -o - %s | FileCheck %s | 
|  | // rdar://16206443 | 
|  |  | 
|  | @interface NSObject | 
|  | - (void) finalize; | 
|  | + (void) class; | 
|  | @end | 
|  |  | 
|  | __attribute__((availability(macosx,introduced=9876.5))) | 
|  | @interface MyClass : NSObject | 
|  | + (void)someClassMethod; | 
|  | - (void)someInstanceMethod; | 
|  | @end | 
|  |  | 
|  | @implementation MyClass | 
|  | + (void)someClassMethod { | 
|  | } | 
|  |  | 
|  | - (void)someInstanceMethod { | 
|  | [MyClass someClassMethod]; | 
|  | [super finalize]; | 
|  | } | 
|  | @end | 
|  |  | 
|  | void kit() | 
|  | { | 
|  | MyClass *wrapper = [MyClass alloc]; | 
|  | } | 
|  |  | 
|  | // CHECK: @"OBJC_CLASS_$_MyClass" = global %struct._class_t | 
|  | // CHECK: @"OBJC_METACLASS_$_NSObject" = external global %struct._class_t | 
|  | // CHECK: @"OBJC_METACLASS_$_MyClass" = global %struct._class_t | 
|  | // CHECK: @"OBJC_CLASS_$_NSObject" = external global %struct._class_t | 
|  |  | 
|  | // rdar://16529125 | 
|  | __attribute__((weak_import)) | 
|  | @interface NSURLQueryItem : NSObject | 
|  | @end | 
|  |  | 
|  | @implementation NSURLQueryItem (hax) | 
|  | +(void)classmethod { [super class]; } | 
|  | @end | 
|  |  | 
|  | // CHECK: @"OBJC_METACLASS_$_NSURLQueryItem" = extern_weak global | 
|  | // CHECK: @"OBJC_CLASS_$_NSURLQueryItem" = extern_weak global | 
|  |  | 
|  | // rdar://17633301 | 
|  | __attribute__((visibility("default"))) __attribute__((availability(ios,introduced=9876.5))) | 
|  | @interface AVScheduledAudioParameters @end | 
|  |  | 
|  | @interface XXXX : AVScheduledAudioParameters | 
|  | @end | 
|  |  | 
|  | @implementation AVScheduledAudioParameters @end | 
|  | @implementation XXXX @end | 
|  |  | 
|  | // CHECK: @"OBJC_CLASS_$_AVScheduledAudioParameters" = global %struct._class_t | 
|  | // CHECK: @"OBJC_METACLASS_$_AVScheduledAudioParameters" = global %struct._class_t |