1*4d3d785eSRichard Smith // RUN: %clang_cc1 -fsyntax-only -verify -std=c++11 -DUNREACHABLE=1 %s 2*4d3d785eSRichard Smith // RUN: %clang_cc1 -fsyntax-only -verify -std=c++11 -DUNREACHABLE=0 -Wimplicit-fallthrough %s 3*4d3d785eSRichard Smith fallthrough(int n)4*4d3d785eSRichard Smithvoid fallthrough(int n) { 5*4d3d785eSRichard Smith switch (n) { 6*4d3d785eSRichard Smith case 1: 7*4d3d785eSRichard Smith if (UNREACHABLE) 8*4d3d785eSRichard Smith return; 9*4d3d785eSRichard Smith [[fallthrough]]; // expected-no-diagnostics, only checked when UNREACHABLE=0 10*4d3d785eSRichard Smith case 2: 11*4d3d785eSRichard Smith break; 12*4d3d785eSRichard Smith } 13*4d3d785eSRichard Smith } 14