problem with Bryce's 2000-04-18 patch

Matt Welsh mdw@cs.berkeley.edu
Wed Apr 26 17:05:00 GMT 2000


Hi,

Compiling gcc-2.95.2 with Bryce's 2000-04-18 patch on x86 Linux gives
me the following error:

gcc -c  -DIN_GCC    -g -O2     -I. -I.. -I/home/cs/mdw/disks/mm33/egcs-jaguar/src/gcc-2.95.2-20000418-patched/gcc/java -I/home/cs/mdw/disks/mm33/egcs-jaguar/src/gcc-2.95.2-20000418-patched/gcc/java/.. -I/home/cs/mdw/disks/mm33/egcs-jaguar/src/gcc-2.95.2-20000418-patched/gcc/java/../config -I/home/cs/mdw/disks/mm33/egcs-jaguar/src/gcc-2.95.2-20000418-patched/gcc/java/../../include /home/cs/mdw/disks/mm33/egcs-jaguar/src/gcc-2.95.2-20000418-patched/gcc/java/parse.c
./parse.y: In function `java_parser_context_save_global':
./parse.y:2378: structure has no member named `saved_data_ctx'
./parse.y:2380: structure has no member named `saved_data'
./parse.y:2388: structure has no member named `saved_data_ctx'
./parse.y:2395: structure has no member named `saved_data'
./parse.y: In function `java_parser_context_restore_global':
./parse.y:2405: structure has no member named `saved_data'
./parse.y:2407: structure has no member named `saved_data_ctx'
./parse.y: In function `java_debug_context_do':
./parse.y:2473: structure has no member named `saved_data_ctx'
./parse.y:2475: structure has no member named `saved_data'
./parse.y: In function `fix_constructors':
./parse.y:6283: too few arguments to function `build_super_invocation'
./parse.y:6315: too few arguments to function `build_super_invocation'
./parse.y: In function `patch_invoke':
./parse.y:7527: too many arguments to function `build_invokeinterface'
./parse.y: In function `build_super_invocation':
./parse.y:8948: number of arguments doesn't match prototype
./parse.y:218: prototype declaration
./parse.y: In function `patch_throw_statement':
./parse.y:11694: warning: passing arg 1 of `build_address_of' from incompatible pointer type
make[2]: *** [parse.o] Error 1
make[2]: Leaving directory `/scratch/mdw/egcs-jaguar/build/gcc-2.95.2-20000418-patched/gcc/java'
make[1]: *** [jc1] Error 2
make[1]: Leaving directory `/scratch/mdw/egcs-jaguar/build/gcc-2.95.2-20000418-patched/gcc'
make: *** [install-gcc] Error 2

I also noticed that when applying the patch, the following hunk was
rejected from 'parse.c' :

****************** 8323,8328 ****
  java_method_add_stmt (fndecl, expr)       
       tree fndecl, expr;  
  {
     return add_stmt_to_block (GET_CURRENT_BLOCK
--- 8627,8634 ----  
  java_method_add_stmt (fndecl, expr)       
       tree fndecl, expr;
  {
+   if (!GET_CURRENT_BLOCK (fndecl))
+     return NULL_TREE;    
    return add_stmt_to_block (GET_CURRENT_BLOCK


I can't see how this would cause the error above, but it suggests to me
that something funny is going on with parse.c ... shouldn't this always
be generated from parse.y anyway?

Matt


More information about the Java mailing list