Ilya Biryukov | 15a37eb | 2019-05-06 13:18:00 +0000 | [diff] [blame^] | 1 | void loops() { |
| 2 | while (true) { |
| 3 | // line 3 |
| 4 | } |
| 5 | for (;;) { |
| 6 | // line 6 |
| 7 | } |
| 8 | do { |
| 9 | // line 9 |
| 10 | } while (true); |
| 11 | // line 11 |
| 12 | } |
| 13 | // RUN: %clang_cc1 -fsyntax-only -code-completion-patterns -code-completion-at=%s:3:1 %s -o - | FileCheck -check-prefix=LOOP %s |
| 14 | // RUN: %clang_cc1 -fsyntax-only -code-completion-patterns -code-completion-at=%s:6:1 %s -o - | FileCheck -check-prefix=LOOP %s |
| 15 | // RUN: %clang_cc1 -fsyntax-only -code-completion-patterns -code-completion-at=%s:9:1 %s -o - | FileCheck -check-prefix=LOOP %s |
| 16 | // LOOP: COMPLETION: Pattern : break;{{$}} |
| 17 | // LOOP: COMPLETION: Pattern : continue;{{$}} |
| 18 | // LOOP: COMPLETION: Pattern : goto <#label#>;{{$}} |
| 19 | // LOOP: COMPLETION: Pattern : return;{{$}} |
| 20 | // |
| 21 | // RUN: %clang_cc1 -fsyntax-only -code-completion-patterns -code-completion-at=%s:11:1 %s -o - | FileCheck -check-prefix=OUTSIDE-LOOP %s |
| 22 | // OUTSIDE-LOOP-NOT: COMPLETION: Pattern : break;{{$}} |
| 23 | // OUTSIDE-LOOP-NOT: COMPLETION: Pattern : continue;{{$}} |
| 24 | // OUTSIDE-LOOP: COMPLETION: Pattern : goto <#label#>;{{$}} |
| 25 | // OUTSIDE-LOOP: COMPLETION: Pattern : return;{{$}} |
| 26 | |
| 27 | int value_return() { |
| 28 | // line 28 |
| 29 | } |
| 30 | void void_return() { |
| 31 | // line 31 |
| 32 | } |
| 33 | // RUN: %clang_cc1 -fsyntax-only -code-completion-patterns -code-completion-at=%s:28:1 %s -o - | FileCheck -check-prefix=RETURN-VAL %s |
| 34 | // RETURN-VAL-NOT: COMPLETION: Pattern : return;{{$}} |
| 35 | // RETURN-VAL: COMPLETION: Pattern : return <#expression#>;{{$}} |
| 36 | |
| 37 | // RUN: %clang_cc1 -fsyntax-only -code-completion-patterns -code-completion-at=%s:31:1 %s -o - | FileCheck -check-prefix=RETURN-VOID %s |
| 38 | // RETURN-VOID-NOT: COMPLETION: Pattern : return <#expression#>;{{$}} |
| 39 | // RETURN-VOID: COMPLETION: Pattern : return;{{$}} |