My first bug report :-) $ protoize subdir/test.c protoize: compiling `subdir/test.c' protoize: subdir/subdir/test.c: can't get status: No such file or directory protoize: warning: missing SYSCALLS file `/usr/local/lib/gcc-lib/i686-pc-linux- gnu/3.2.3/SYSCALLS.c.X' $ I think following modification is better : in gcc-3.2.3/gcc/protoize.c 1478c1478 < fi_p = find_file (abspath (invocation_filename, filename), 0); --- > fi_p = find_file (abspath (getpwd(), filename), 0); 1548c1548 < def_dec_p->file = find_file (abspath (invocation_filename, filename), is_syscalls); --- > def_dec_p->file = find_file (abspath (getpwd(), filename), is_syscalls); Thank you. ---- Tetsuya Takatsuru NTT COMWARE Japan
Well there is not enough information to reproduce this bug, can you provide a simple example to reproduce this one? Also try 3.4.3 since that this the latest released version.
(In reply to comment #1) > Well there is not enough information to reproduce this bug, can you provide a simple example to > reproduce this one? > Also try 3.4.3 since that this the latest released version. ok. please try this one: $ mkdir subdir $ echo "main() { foo(); }" > test1.c $ echo "foo() { }" > subdir/test2.c $ protoize test1.c subdir/test2.c protoize: compiling `test1.c' protoize: compiling `subdir/test2.c' protoize: subdir/subdir/test2.c: can't get status: No such file or directory protoize: warning: missing SYSCALLS file `/usr/local/lib/gcc-lib/i686-pc-linux- gnu/3.2.3/SYSCALLS.c.X' protoize: converting file `test1.c' protoize: `subdir/subdir/test2.c' not converted I also tried 3.4.3, and that was reproduced.
Confirmed, I can get the failure in 4.1.1. It seems protoize only works right on files in the current directory. That said, it doesn't appear that anyone's done any work on protoize in years. It no longer installs by default, in 4.1.1 you need to do "make proto" in the gcc directory to build it. Confusingly, if you say "make protoize" the SYSCALLS file isn't built, and you get the message about the missing SYSCALLS.c.X. Reconfirming, but setting to lowest priority.
protoize has been removed for GCC 4.5.