From Bugzilla Helper: User-Agent: Mozilla/4.7 [en] (WinNT; U) Description of problem: How reproducible: Always Steps to Reproduce: 1. Write simply hello world program and run cproto, (see above description) 2. 3. Actual Results: [jekacur@rh71 jekacur]$ cat hello_world.c #include <stdio.h> int main(void) { printf("Hello, World! (from main)\n"); hello_world_func(); exit(0); } hello_world_func(void) { printf("Hello, World! (from hello_world_func()\n"); } [jekacur@rh71 jekacur]$ /usr/bin/cproto hello_world.c /* hello_world.c */ "/usr/lib/gcc-lib/i386-redhat-linux/2.96/include/stdarg.h", line 43: parse error at token '__builtin_va_list' Expected: auto char define-name double extern inline register static ... union "/usr/include/libio.h", line 455: parse error at token '__gnuc_va_list' Expected: ... auto char define-name double extern inline register ... typedef-name "/usr/include/libio.h", line 457: parse error at token '__gnuc_va_list' Expected: ... auto char define-name double extern inline register ... typedef-name "/usr/include/stdio.h", line 284: parse error at token '__gnuc_va_list' Expected: ... auto char define-name double extern inline register ... typedef-name "/usr/include/stdio.h", line 286: parse error at token '__gnuc_va_list' Expected: ... auto char define-name double extern inline register ... typedef-name "/usr/include/stdio.h", line 290: parse error at token '__gnuc_va_list' Expected: ... auto char define-name double extern inline register ... typedef-name "/usr/include/stdio.h", line 299: parse error at token '__gnuc_va_list' Expected: ... auto char define-name double extern inline register ... typedef-name int main(void); int hello_world_func(void); [jekacur@rh71 jekacur]$ /usr/local/bin/cproto hello_world.c /* hello_world.c */ int main(void); int hello_world_func(void); Expected Results: The above results contain the problem /usr/bin/cproto (RedHat version 4.6-7) and the expected results /usr/local/bin/cproto (Source forge version) Additional info: The cproto on source forge works
verified these errors testing cproto-4.6-8 on cproto itself: [root@borgan cproto-4.6]# cproto cproto.c /* cproto.c */ "/usr/lib/gcc-lib/i386-redhat-linux/2.96/include/stdarg.h", line 43: parse error at token '__builtin_va_list' Expected: auto char define-name double extern inline register static typedef-name union "/usr/include/libio.h", line 457: parse error at token '__gnuc_va_list' Expected: ... auto char define-name double extern inline register static typedef-name "/usr/include/libio.h", line 459: parse error at token '__gnuc_va_list' Expected: ... auto char define-name double extern inline register static typedef-name "/usr/include/stdio.h", line 285: parse error at token '__gnuc_va_list' Expected: ... auto char define-name double extern inline register static typedef-name "/usr/include/stdio.h", line 287: parse error at token '__gnuc_va_list' Expected: ... auto char define-name double extern inline register static typedef-name "/usr/include/stdio.h", line 291: parse error at token '__gnuc_va_list' Expected: ... auto char define-name double extern inline register static typedef-name "/usr/include/stdio.h", line 300: parse error at token '__gnuc_va_list' Expected: ... auto char define-name double extern inline register static typedef-name char *xmalloc(unsigned n); char *xstrdup(char *src); void put_error(void); int is_path_sep(int ch); char *trim_path_sep(char *s); int main(int argc, char *argv[]); [root@borgan cproto-4.6]#
The version on sourceforge does *not* work. Can you send me the source code that claims to fix this for you?
Will be fixed in cproto-4.6-9; I still don't see the sourceforge version working here.