Skip to content
  • Pedro Alves's avatar
    Fix s390 GNU/Linux gdb and gdbserver builds · 3451269c
    Pedro Alves authored
    Now that gdb/gdbserver compile as C++ programs by default, the s390
    GNU/Linux build started failing with:
    
     In file included from ../../src/gdb/common/common-defs.h:64:0,
    		  from ../../src/gdb/defs.h:28,
    		  from ../../src/gdb/s390-linux-nat.c:22:
     ../../src/gdb/s390-linux-nat.c: In function ‘void fetch_regset(regcache*, int, int, int, const regset*)’:
     ../../src/gdb/../include/libiberty.h:711:38: error: invalid conversion from ‘void*’ to ‘gdb_byte* {aka unsigned char*}’ [-fpermissive]
      # define alloca(x) __builtin_alloca(x)
    				       ^
     ../../src/gdb/s390-linux-nat.c:297:19: note: in expansion of macro ‘alloca’
        gdb_byte *buf = alloca (regsize);
    		    ^
    
    etc.
    
    gdb/ChangeLog:
    2016-04-21  Pedro Alves  <palves@redhat.com>
    
    	* s390-linux-nat.c (fetch_regset, store_regset, check_regset): Use
    	void * instead of gdb_byte *.
    
    gdb/gdbserver/ChangeLog:
    2016-04-21  Pedro Alves  <palves@redhat.com>
    
    	* linux-s390-low.c (s390_collect_ptrace_register)
    	(s390_supply_ptrace_register, s390_get_hwcap): Use gdb_byte * and
    	add casts.
    	(s390_check_regset): Use void * instead of gdb_byte *.
    3451269c