brintos

brintos / llvm-project-archived public Read only

0
0
Text · 699 B · 869aeda Raw
29 lines · plain
1// RUN: %clang_cc1 -fobjc-gc -triple x86_64-apple-darwin10 -fobjc-runtime=macosx-fragile-10.5 -emit-llvm -o - %s | FileCheck %s2 3@class CPDestUser;4 5CPDestUser* FUNC();6 7// CHECK: {{call.* @objc_assign_global}}8CPDestUser* globalUser = FUNC();9 10// CHECK: {{call.* @objc_assign_weak}}11__weak CPDestUser* weakUser = FUNC();12 13 14// CHECK: {{call.* @objc_assign_global}}15static CPDestUser* staticUser = FUNC();16 17CPDestUser* GetDestUser()18{19// CHECK: {{call.* @objc_assign_global}}20	static CPDestUser* gUser = FUNC();21// CHECK: {{call.* @objc_assign_weak}}22	static __weak CPDestUser* wUser = FUNC();23        if (wUser)24          return wUser;25        if (staticUser)26	  return staticUser;27	return gUser;28}29