xref: /llvm-project/clang/test/Analysis/diagnostics/shortest-path-suppression.c (revision 0dd49a5628bbe01cecf6516017da59ae44863ab3)
1 // RUN: %clang_analyze_cc1 -analyzer-checker=core -analyzer-config suppress-null-return-paths=true -analyzer-output=text -verify %s
2 // expected-no-diagnostics
3 
returnNull(void)4 int *returnNull(void) { return 0; }
5 int coin(void);
6 
7 // Use a float parameter to ensure that the value is unknown. This will create
8 // a cycle in the generated ExplodedGraph.
testCycle(float i)9 void testCycle(float i) {
10   int *x = returnNull();
11   int y;
12   while (i > 0) {
13     x = returnNull();
14     y = 2;
15     i -= 1;
16   }
17   *x = 1; // no-warning
18   y += 1;
19 }
20