1// UNSUPPORTED: target={{.*}}-zos{{.*}}, target={{.*}}-aix{{.*}} 2// Test this without pch. 3// RUN: %clang_cc1 -include %S/objc_container.h -fsyntax-only -verify %s 4 5// Test with pch. 6// RUN: %clang_cc1 -x objective-c -emit-pch -o %t %S/objc_container.h 7// RUN: %clang_cc1 -include-pch %t -fsyntax-only -verify %s 8// RUN: %clang_cc1 -include-pch %t -ast-print %s | FileCheck -check-prefix=CHECK-PRINT %s 9// RUN: %clang_cc1 -include-pch %t -emit-llvm -o - %s | FileCheck -check-prefix=CHECK-IR %s 10 11// expected-no-diagnostics 12 13// CHECK-PRINT: id oldObject = array[10]; 14// CHECK-PRINT: array[10] = oldObject; 15// CHECK-PRINT: oldObject = dictionary[key]; 16// CHECK-PRINT: dictionary[key] = newObject; 17 18// CHECK-IR: define {{.*}}void @all() #0 19// CHECK-IR: {{call.*objc_msgSend}} 20// CHECK-IR: {{call.*objc_msgSend}} 21// CHECK-IR: {{call.*objc_msgSend}} 22// CHECK-IR: {{call.*objc_msgSend}} 23// CHECK-IR: ret void 24 25// CHECK-IR: attributes #0 = { noinline nounwind {{.*}} } 26// CHECK-IR: attributes #1 = { nonlazybind } 27