1ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao// RUN: %clang_cc1 %s -emit-llvm -o - 2ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao 3ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liaoint bar(); 4ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liaoint test0() { 5ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao int i; 6ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao i = 1 + 2; 7ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao do { 8ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao i = bar(); 9ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao i = bar(); 10ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao } while(0); 11ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao return i; 12ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao} 13ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao 14ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao 15ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liaoint test1() { 16ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao int i; 17ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao i = 1 + 2; 18ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao do { 19ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao i = bar(); 20ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao if (i == 42) 21ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao break; 22ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao i = bar(); 23ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao } while(1); 24ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao return i; 25ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao} 26ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao 27ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao 28ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liaoint test2() { 29ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao int i; 30ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao i = 1 + 2; 31ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao do { 32ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao i = bar(); 33ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao if (i == 42) 34ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao continue; 35ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao i = bar(); 36ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao } while(1); 37ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao return i; 38ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao} 39ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao 40ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao 41ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liaoint test3() { 42ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao int i; 43ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao i = 1 + 2; 44ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao do { 45ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao i = bar(); 46ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao if (i == 42) 47ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao break; 48ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao } while(0); 49ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao return i; 50ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao} 51ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao 52ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao 53ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liaoint test4() { 54ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao int i; 55ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao i = 1 + 2; 56ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao do { 57ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao i = bar(); 58ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao if (i == 42) 59ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao continue; 60ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao } while(0); 61ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao return i; 62ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao} 63ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao 64ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao// rdar://6103124 65ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liaovoid test5() { 66ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao do { break; } while(0); 67ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao} 68ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao 69ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao 70ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao 71