namespace; include rt; // zy --explain-checks: one line per check the compiler keeps, with its reason int[8] t; int g(int* p, int k) { return p[k]; } int main() { int i, s = 0, n = 8, k = 3; int* q = rt.new(8); int[?] a = rt.new(int[?], 8); for (i = 0; i < 8; i++) s = s + t[i]; for (i = 0; i < n; i++) s = s + t[i]; for (i = 0; i < n; i++) { s = s + t[i]; n = n - 0; } s = s + t[k]; for (i = 0; i < n; i++) s = s + q[i]; for (i = 0; i < n; i++) { s = s + q[i]; rt.put_s(""); } for (i = 0; i < n; i++) s = s + a[i]; s = s + g(q, 2); unbounded { s = s + t[k]; } rt.put_n(s); rt.put_c(10); return 0; }