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