1*67e74705SXin Li // RUN: %clang_cc1 -fsyntax-only -verify -fblocks -std=c++11 -Wimplicit-fallthrough %s 2*67e74705SXin Li fallthrough_in_blocks()3*67e74705SXin Livoid fallthrough_in_blocks() { 4*67e74705SXin Li void (^block)() = ^{ 5*67e74705SXin Li int x = 0; 6*67e74705SXin Li switch (x) { 7*67e74705SXin Li case 0: 8*67e74705SXin Li x++; 9*67e74705SXin Li [[clang::fallthrough]]; // no diagnostics 10*67e74705SXin Li case 1: 11*67e74705SXin Li x++; 12*67e74705SXin Li default: // \ 13*67e74705SXin Li expected-warning{{unannotated fall-through between switch labels}} \ 14*67e74705SXin Li expected-note{{insert 'break;' to avoid fall-through}} 15*67e74705SXin Li break; 16*67e74705SXin Li } 17*67e74705SXin Li }; 18*67e74705SXin Li block(); 19*67e74705SXin Li } 20