blob: 0a45f48a017f8f1dc011fb3cc6f6ba396c62f5a4 [file] [log] [blame]
Jordan Rose0073a5c2012-09-25 19:03:06 +00001// RUN: %clang_cc1 -analyze -analyzer-checker=core,debug.DumpTraversal %s | FileCheck %s
2
3int a();
4int b();
5int c();
6
7void testRemoveDeadBindings() {
8 int i = a();
9 if (i)
10 a();
11 else
12 b();
13
14 // At this point the symbol bound to 'i' is dead.
15 // The effects of a() and b() are identical (they both invalidate globals).
16 // We should unify the two paths here and only get one end-of-path node.
17 c();
18}
19
20// CHECK: --END PATH--
21// CHECK-NOT: --END PATH--