diff clang/test/ARCMT/retains.m.result @ 150:1d019706d866

LLVM10
author anatofuz
date Thu, 13 Feb 2020 15:10:13 +0900
parents
children c4bab56944e8
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/clang/test/ARCMT/retains.m.result	Thu Feb 13 15:10:13 2020 +0900
@@ -0,0 +1,65 @@
+// RUN: %clang_cc1 -fblocks -fsyntax-only -fobjc-arc -x objective-c %s.result
+// RUN: arcmt-test --args -triple x86_64-apple-darwin10 -fblocks -fsyntax-only -x objective-c %s > %t
+// RUN: diff %t %s.result
+
+#include "Common.h"
+
+id IhaveSideEffect();
+
+@interface Foo : NSObject {
+  id bar;
+}
+@property (strong) id bar;
+-(id)test:(id)obj;
+-(id)something;
+@end
+
+#define Something_Macro(key, comment) \
+ [[Foo new] something]
+
+@implementation Foo
+
+@synthesize bar;
+
+-(id)something {}
+
+-(id)test:(id)obj {
+  id x = self.bar;
+  self.bar = obj;
+
+  Something_Macro(@"foo", "@bar");
+
+  IhaveSideEffect();
+
+  [self something];
+
+  [self something];
+
+  IhaveSideEffect();
+  // do stuff with x;
+  return self;
+}
+  
+- (id)test1 {
+  id x=0;
+  return (((x)));
+}
+@end
+
+id foo (Foo *p) {
+    p = p;
+    return (p);
+}
+
+void block_tests(Foo *p) {
+  id (^B)() = ^() {
+    if (p) {
+      id (^IB)() = ^() {
+        id bar = p;
+        return bar;
+      };
+      IB();
+    }
+    return p;
+  };
+}