summaryrefslogtreecommitdiffstats
path: root/clang/test/SemaCXX/warn-infinite-recursion.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'clang/test/SemaCXX/warn-infinite-recursion.cpp')
-rw-r--r--clang/test/SemaCXX/warn-infinite-recursion.cpp13
1 files changed, 11 insertions, 2 deletions
diff --git a/clang/test/SemaCXX/warn-infinite-recursion.cpp b/clang/test/SemaCXX/warn-infinite-recursion.cpp
index bbeff92a657..e5a5a18b657 100644
--- a/clang/test/SemaCXX/warn-infinite-recursion.cpp
+++ b/clang/test/SemaCXX/warn-infinite-recursion.cpp
@@ -53,19 +53,28 @@ int j() { // expected-warning{{call itself}}
return 5 + j();
}
-void k() { // expected-warning{{call itself}}
+// Don't warn on infinite loops
+void k() {
while(true) {
k();
}
}
-// Don't warn on infinite loops
void l() {
while (true) {}
l();
}
+void m() {
+ static int count = 5;
+ if (count >0) {
+ count--;
+ l();
+ }
+ while (true) {}
+}
+
class S {
static void a();
void b();
OpenPOWER on IntegriCloud