aboutsummaryrefslogtreecommitdiffhomepage
path: root/test/18-goto2.c
blob: 8742d3505346d6e9f93f64fc672ce952a6615655 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
/* EXPECT:
ok
*/

void h(int x){}

/* isolated mem2reg bug from something in regalloc: the goto into the loop past
 * the `int nqueue` declaration caused a miscompilation */
void test(void) {
   int curi = 5;
   goto start2;
   for (curi; curi >= 0; curi--) {
      int nqueue;
   start2:
      for (nqueue = 2; nqueue > 0; ) {
         h(nqueue--);
      }
   }
}
int puts(const char *);
int main(void) {
   test();
   puts("ok");
}