// RUN: %clang_asan %s -o %t -framework Foundation // RUN: %run %t 2>&1 | FileCheck %s #import struct MyStruct { long a, b, c, d; }; @interface MyClass: NSObject - (MyStruct)methodWhichReturnsARect; @end @implementation MyClass - (MyStruct)methodWhichReturnsARect { MyStruct s; s.a = 10; s.b = 20; s.c = 30; s.d = 40; return s; } @end int main() { MyClass *myNil = nil; // intentionally nil [myNil methodWhichReturnsARect]; fprintf(stderr, "Hello world"); } // CHECK-NOT: AddressSanitizer: stack-use-after-scope // CHECK: Hello world