aboutsummaryrefslogtreecommitdiff
path: root/tests/core/test_stack.in
blob: b2bca9a1ed6416526aca9378860ee1868a3b48c0 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include <stdio.h>
int test(int i) {
  int x = 10;
  if (i > 0) {
    return test(i - 1);
  }
  return int(&x);  // both for the number, and forces x to not be nativized
}
int main(int argc, char **argv) {
  // We should get the same value for the first and last - stack has unwound
  int x1 = test(argc - 2);
  int x2 = test(100);
  int x3 = test((argc - 2) / 4);
  printf("*%d,%d*\n", x3 - x1, x2 != x1);
  return 0;
}