// RUN: %clang_cc1 -triple x86_64-apple-darwin10 -fdebugger-objc-literal -emit-llvm -o - %s | FileCheck %s
// RUN: %clang_cc1 -triple x86_64-apple-darwin10 -fdebugger-objc-literal -emit-llvm -o - %s -DINCLUDE_INTERFACES=1 | FileCheck %s

// We need two different RUN lines here because the first time a class/method is absent,
// it will be added for -fdebugger-objc-literal.

#ifdef INCLUDE_INTERFACES
@interface NSObject
@end

@interface NSNumber : NSObject
@end

@interface NSArray : NSObject
@end

@interface NSDictionary : NSObject
@end

@interface NSString : NSObject
@end
#endif

int main() {
  // object literals.
  id l;
  l = @'a';
  l = @42;
  l = @-42;
  l = @42u;
  l = @3.141592654f;
  l = @__objc_yes;
  l = @__objc_no;
  l = @{ @"name":@666 };
  l = @[ @"foo", @"bar" ];

#if __has_feature(objc_boxed_expressions)
  // boxed expressions.
  id b;
  b = @('a');
  b = @(42);
  b = @(-42);
  b = @(42u);
  b = @(3.141592654f);
  b = @(__objc_yes);
  b = @(__objc_no);
  b = @("hello");
#else
#error "boxed expressions not supported"
#endif
}

// CHECK: declare i8* @objc_msgSend(i8*, i8*, ...) [[NLB:#[0-9]+]]

// CHECK: attributes [[NLB]] = { nonlazybind }
