args->argv[args->argc] = NULL;
}
+void args_pop(ARGS *args, int n)
+{
+ args->argc -= n;
+ args->argv[args->argc] = NULL;
+}
args_add(args, "-o");
args_add(args, tmp_hashname);
status = execute(args->argv, tmp_stdout, tmp_stderr);
- args->argc -= 2;
+ args_pop(args, 2);
if (stat(tmp_stdout, &st) != 0 || st.st_size != 0) {
cc_log("compiler produced stdout for %s\n", output_file);
args_add(args, "-E");
status = execute(args->argv, path_stdout, path_stderr);
- args->argc--;
+ args_pop(args, 1);
if (status != 0) {
unlink(path_stdout);
ARGS *args_init(void);
void args_add(ARGS *args, const char *s);
+void args_pop(ARGS *args, int n);
+