1ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// RUN: %clang_cc1 -fblocks -fsyntax-only -verify %s 2ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// RUN: %clang_cc1 -fblocks -fobjc-arc -fsyntax-only -verify %s 3ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// expected-no-diagnostics 4ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// rdar://17259812 5ef8225444452a1486bd721f3285301fe84643b00Stephen Hines 6ef8225444452a1486bd721f3285301fe84643b00Stephen Hinestypedef void (^BT) (); 7ef8225444452a1486bd721f3285301fe84643b00Stephen Hines 8ef8225444452a1486bd721f3285301fe84643b00Stephen Hinesclass S { 9ef8225444452a1486bd721f3285301fe84643b00Stephen Hines BT br() __attribute__((ns_returns_retained)) { 10ef8225444452a1486bd721f3285301fe84643b00Stephen Hines return ^{}; 11ef8225444452a1486bd721f3285301fe84643b00Stephen Hines } 12ef8225444452a1486bd721f3285301fe84643b00Stephen Hines BT br1() __attribute__((ns_returns_retained)); 13ef8225444452a1486bd721f3285301fe84643b00Stephen Hines}; 14ef8225444452a1486bd721f3285301fe84643b00Stephen Hines 15ef8225444452a1486bd721f3285301fe84643b00Stephen HinesBT S::br1() { 16ef8225444452a1486bd721f3285301fe84643b00Stephen Hines return ^{}; 17ef8225444452a1486bd721f3285301fe84643b00Stephen Hines} 18