block-labels.c revision f3cf89737965352ee02026992e2dc735824e185e
1// RUN: clang %s -verify -fblocks -fsyntax-only 2 3int a() { 4 A:if (1) xx(); 5 return ^{A:return 1;}(); 6} 7int b() { 8 A: return ^{int a; A:return 1;}(); 9} 10 11int d() { 12 A: return ^{int a; A: a = ^{int a; A:return 1;}() + ^{int b; A:return 2;}(); return a; }(); 13} 14 15int c() { 16 goto A; return ^{ A:return 1;}(); // expected-error {{use of undeclared label 'A'}} 17} 18