From patchwork Fri Nov 2 23:17:08 2012 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: libgo patch committed: Fix reflect.Call X-Patchwork-Submitter: Ian Taylor X-Patchwork-Id: 196773 Message-Id: To: gcc-patches@gcc.gnu.org, gofrontend-dev@googlegroups.com Date: Fri, 02 Nov 2012 16:17:08 -0700 From: Ian Lance Taylor List-Id: Part of my initial 64-bit support patch was bogus: I shadowed a variable in a couple of functions used for reflect.Call. This patch fixes it. Bootstrapped and ran Go testsuite on x86_64-unknown-linux-gnu. Committed to mainline. Ian diff -r cecca11207b7 libgo/runtime/go-reflect-call.c --- a/libgo/runtime/go-reflect-call.c Thu Nov 01 14:42:39 2012 -0700 +++ b/libgo/runtime/go-reflect-call.c Fri Nov 02 16:15:20 2012 -0700 @@ -75,15 +75,15 @@ const struct __go_slice_type *descriptor __attribute__ ((unused))) { ffi_type *ret; - ffi_type *intgo; + ffi_type *ffi_intgo; ret = (ffi_type *) __go_alloc (sizeof (ffi_type)); ret->type = FFI_TYPE_STRUCT; ret->elements = (ffi_type **) __go_alloc (4 * sizeof (ffi_type *)); ret->elements[0] = &ffi_type_pointer; - intgo = sizeof (intgo) == 4 ? &ffi_type_sint32 : &ffi_type_sint64; - ret->elements[1] = intgo; - ret->elements[2] = intgo; + ffi_intgo = sizeof (intgo) == 4 ? &ffi_type_sint32 : &ffi_type_sint64; + ret->elements[1] = ffi_intgo; + ret->elements[2] = ffi_intgo; ret->elements[3] = NULL; return ret; } @@ -117,14 +117,14 @@ go_string_to_ffi (void) { ffi_type *ret; - ffi_type *intgo; + ffi_type *ffi_intgo; ret = (ffi_type *) __go_alloc (sizeof (ffi_type)); ret->type = FFI_TYPE_STRUCT; ret->elements = (ffi_type **) __go_alloc (3 * sizeof (ffi_type *)); ret->elements[0] = &ffi_type_pointer; - intgo = sizeof (intgo) == 4 ? &ffi_type_sint32 : &ffi_type_sint64; - ret->elements[1] = intgo; + ffi_intgo = sizeof (intgo) == 4 ? &ffi_type_sint32 : &ffi_type_sint64; + ret->elements[1] = ffi_intgo; ret->elements[2] = NULL; return ret; }