1*67e74705SXin Li // RUN: %clang_cc1 -fsanitize-trap=returns-nonnull-attribute -fsanitize=returns-nonnull-attribute -emit-llvm %s -o - -triple x86_64-apple-darwin10 -fblocks | FileCheck %s 2*67e74705SXin Li 3*67e74705SXin Li // Awkward interactions of sanitizers with blocks. 4*67e74705SXin Li 5*67e74705SXin Li // rdar://22071955 6*67e74705SXin Li const char *TheString = "Hello, world!"; 7*67e74705SXin Li const char *(^getString)(void) = ^{ 8*67e74705SXin Li return TheString; 9*67e74705SXin Li }; 10*67e74705SXin Li 11*67e74705SXin Li // CHECK-LABEL: define internal i8* @getString_block_invoke 12*67e74705SXin Li 13*67e74705SXin Li // TODO: Actually support returns_nonnull on blocks. 14