Hi! My randconfig builds notoriously fail on this: [~/linux/drivers/scsi/aic7xxx/aicasm](vanilla)$ make -j1 bison -d -b aicasm_gram aicasm_gram.y mv aicasm_gram.tab.c .//aicasm_gram.c mv aicasm_gram.tab.h .//aicasm_gram.h bison -d -b aicasm_macro_gram -p mm aicasm_macro_gram.y mv aicasm_macro_gram.tab.c .//aicasm_macro_gram.c mv aicasm_macro_gram.tab.h .//aicasm_macro_gram.h flex -o aicasm_scan.c aicasm_scan.l flex -Pmm -o aicasm_macro_scan.c aicasm_macro_scan.l cc -I/usr/include -I. -I./ aicasm.c aicasm_symbol.c .//aicasm_gram.c .//aicasm_macro_gram.c .//aicasm_scan.c .//aicasm_macro_scan.c -o .//aicasm -ldb aicasm_symbol.c: In function ‘aic_print_reg_dump_end’: aicasm_symbol.c:393:13: warning: implicit declaration of function ‘tolower’ [-Wimplicit-function-declaration] 393 | *letter = tolower(*letter); | ^~~~~~~ aicasm_gram.tab.c:204:10: fatal error: aicasm_gram.tab.h: No such file or directory compilation terminated. aicasm_macro_gram.tab.c:167:10: fatal error: aicasm_macro_gram.tab.h: No such file or directory compilation terminated. And the generated yaccage has: #include "aicasm_gram.tab.h" which tries to refer to the just renamed file. As the files in question are generated, with the filename coming from $YACC rather than source, it'd take some after-processing with sed or a similar hack. Thus, instead of sending a patch, I thought it'd better to ask: what the renames are for? Meow! -- ⢀⣴⠾⠻⢶⣦⠀ ⣾⠁⢠⠒⠀⣿⡁ ⢿⡄⠘⠷⠚⠋⠀ It's time to migrate your Imaginary Protocol from version 4i to 6i. ⠈⠳⣄⠀⠀⠀⠀