[RFA] Fix cygwin32 failure introduced by [patch] windows-nat.c: Fix offset problem in signal string handling

Pierre Muller
2013-03-26T21:48:14Z

Hi all,

I get a failure for 32bit cygwin native GDB:

make[1]: Leaving directory `/usr/local/src/gdbcvs/build-norm/gdb'
gcc -gstabs+ -O0 -I. -I../../src/gdb -I../../src/gdb/common
-I../../src/gdb/config -DLOCALEDIR="\"/usr/local/share/l
ocale\"" -DHAVE_CONFIG_H -I../../src/gdb/../include/opcode
-I../../src/gdb/../opcodes/.. -I../../src/gdb/../readline/..
-I../bfd -I../../src/gdb/../bfd -I../../src/gdb/../include
-I../libdecnumber -I../../src/gdb/../libdecnumber -I../../
src/gdb/gnulib/import -Ibuild-gnulib/import -DTUI=1
-I/usr/include/python2.7 -I/usr/include/python2.7 -Wall -Wdeclara
tion-after-statement -Wpointer-arith -Wformat-nonliteral -Wno-pointer-sign
-Wno-unused -Wunused-value -Wunused-function
-Wno-switch -Wno-char-subscripts -Wmissing-prototypes
-Wdeclaration-after-statement -Wempty-body -Werror -c -o windows-n
at.o -MT windows-nat.o -MMD -MP -MF .deps/windows-nat.Tpo
../../src/gdb/windows-nat.c
cc1: warnings being treated as errors
../../src/gdb/windows-nat.c: In function 'handle_output_debug_string':
../../src/gdb/windows-nat.c:993:18: error: cast to pointer from integer of
different size
Makefile:972: recipe for target `windows-nat.o' failed
make: *** [windows-nat.o] Error 1
make: Leaving directory `/usr/local/src/gdbcvs/build-norm/gdb'

This failure can be fixed by this simple patch, which should
not affect the unreleased 64-bit Cygwin, a confirmation
by Corinna would be nice on this part...

ChangeLog entry:

2013-03-26 Pierre Muller <muller@sourceware.org>

* windows-nat.c (handle_output_debug_string): Avoid typecast
from integer of different size warning.

Index: windows-nat.c
===================================================================
RCS file: /cvs/src/src/gdb/windows-nat.c,v
retrieving revision 1.245
diff -u -p -r1.245 windows-nat.c
--- windows-nat.c 23 Mar 2013 10:48:23 -0000 1.245
+++ windows-nat.c 26 Mar 2013 21:39:57 -0000
@@ -990,7 +990,7 @@ handle_output_debug_string (struct targe
retval = strtoul (p, &p, 0);
if (!retval)
retval = main_thread_id;
- else if ((x = (LPCVOID) strtoull (p, NULL, 0))
+ else if ((x = (LPCVOID) (uintptr_t) strtoull (p, NULL, 0))
&& ReadProcessMemory (current_process_handle, x,
&saved_context,
__COPY_CONTEXT_SIZE, &n)