// RUN: %clang_cc1 -fobjc-arc -fobjc-runtime-has-weak -triple x86_64-apple-darwin -O0 -S %s -o %t-64.s
// RUN: FileCheck -check-prefix LP64 --input-file=%t-64.s %s
// rdar://8991729

@interface NSObject {
  id isa;
}
@end

@interface AllPointers : NSObject {
    id foo;
    id __strong bar;    
    NSObject *bletch;
}
@end

@implementation AllPointers
@end
// CHECK-LP64: L_OBJC_CLASS_NAME_1:
// CHECK-LP64-NEXT: .asciz	"\003"

@class NSString, NSNumber;
@interface A : NSObject {
   NSString *foo;
   NSNumber *bar;
   unsigned int bletch;
   __weak id delegate;
}
@end

@interface B : A {
  unsigned int x;
  NSString *y;
  NSString *z;
}
@end

@implementation A @end

@implementation B @end

// CHECK-LP64: L_OBJC_CLASS_NAME_15:
// CHECK-LP64-NEXT: .asciz	"\022"

