diff --git a/tools/gen-expr/Makefile b/tools/gen-expr/Makefile index ed8e85707dbe35f757433e9baae57a1618f7c417..d04eb38046b55a482b8780c0d8db640b33f57b6f 100644 --- a/tools/gen-expr/Makefile +++ b/tools/gen-expr/Makefile @@ -5,4 +5,4 @@ $(APP): gen-expr.c .PHONY: clean clean: - -rm $(APP) .code.c .expr 2> /dev/null + -rm $(APP) 2> /dev/null diff --git a/tools/gen-expr/gen-expr.c b/tools/gen-expr/gen-expr.c index a94ff2411e969c393b4f09d20359498c7a46473e..4d3272d616108a1e1c6422396a43fd63f4305f5c 100644 --- a/tools/gen-expr/gen-expr.c +++ b/tools/gen-expr/gen-expr.c @@ -97,12 +97,15 @@ int main(int argc, char *argv[]) { sprintf(code_buf, code_format, buf); - FILE *fp = fopen(".code.c", "w"); + FILE *fp = fopen("/tmp/.code.c", "w"); assert(fp != NULL); fputs(code_buf, fp); fclose(fp); - fp = popen("gcc .code.c -Wall -Werror -o .expr && ./.expr", "r"); + int ret = system("gcc /tmp/.code.c -o /tmp/.expr"); + if (ret != 0) continue; + + fp = popen("/tmp/.expr", "r"); assert(fp != NULL); int result; fscanf(fp, "%d", &result);