From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 14069 invoked by alias); 31 Jul 2002 17:03:20 -0000 Mailing-List: contact gdb-patches-help@sources.redhat.com; run by ezmlm Precedence: bulk List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sources.redhat.com Received: (qmail 14062 invoked from network); 31 Jul 2002 17:03:18 -0000 Received: from unknown (HELO mx1.redhat.com) (66.187.233.31) by sources.redhat.com with SMTP; 31 Jul 2002 17:03:18 -0000 Received: from int-mx2.corp.redhat.com (nat-pool-rdu.redhat.com [172.16.52.200] (may be forged)) by mx1.redhat.com (8.11.6/8.11.6) with ESMTP id g6VGoul29258 for ; Wed, 31 Jul 2002 12:50:56 -0400 Received: from potter.sfbay.redhat.com (potter.sfbay.redhat.com [172.16.27.15]) by int-mx2.corp.redhat.com (8.11.6/8.11.6) with ESMTP id g6VH3Gu00481; Wed, 31 Jul 2002 13:03:16 -0400 Received: from romulus.sfbay.redhat.com (remus.sfbay.redhat.com [172.16.27.252]) by potter.sfbay.redhat.com (8.11.6/8.11.6) with ESMTP id g6VH3Fm32435; Wed, 31 Jul 2002 10:03:15 -0700 Received: (from kev@localhost) by romulus.sfbay.redhat.com (8.11.6/8.11.6) id g6VH3Do21455; Wed, 31 Jul 2002 10:03:13 -0700 Date: Wed, 31 Jul 2002 10:25:00 -0000 From: Kevin Buettner Message-Id: <1020731170313.ZM21454@localhost.localdomain> In-Reply-To: Andrew Cagney "Re: [PATCH] utils.c: Revise a couple of internal_error() messages" (Jul 29, 11:51am) References: <1020727020803.ZM21102@localhost.localdomain> <3D45649B.2030403@ges.redhat.com> To: Andrew Cagney Subject: Re: [PATCH] utils.c: Revise a couple of internal_error() messages Cc: gdb-patches@sources.redhat.com MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-SW-Source: 2002-07/txt/msg00617.txt.bz2 On Jul 29, 11:51am, Andrew Cagney wrote: > > { > > if (sizeof (ptr) != TYPE_LENGTH (builtin_type_void_data_ptr)) > > internal_error (__FILE__, __LINE__, > > - "core_addr_to_void_ptr: bad cast"); > > + "host_pointer_to_address: bad cast"); > > return POINTER_TO_ADDRESS (builtin_type_void_data_ptr, &ptr); > > } > > BTW, another (easier/better?) way of resolving this is to convert the > above into gdb_assert(). That way you pick up the function name for > free (and in a maintainable way). I agree. I've just committed the patch below. * utils.c (host_pointer_to_address, address_to_host_pointer): Use gdb_assert() instead of explicit call to internal_error(). Index: utils.c =================================================================== RCS file: /cvs/src/src/gdb/utils.c,v retrieving revision 1.74 diff -u -p -r1.74 utils.c --- utils.c 27 Jul 2002 02:03:45 -0000 1.74 +++ utils.c 31 Jul 2002 16:58:15 -0000 @@ -2462,9 +2462,7 @@ phex_nz (ULONGEST l, int sizeof_l) CORE_ADDR host_pointer_to_address (void *ptr) { - if (sizeof (ptr) != TYPE_LENGTH (builtin_type_void_data_ptr)) - internal_error (__FILE__, __LINE__, - "host_pointer_to_address: bad cast"); + gdb_assert (sizeof (ptr) == TYPE_LENGTH (builtin_type_void_data_ptr)); return POINTER_TO_ADDRESS (builtin_type_void_data_ptr, &ptr); } @@ -2472,9 +2470,8 @@ void * address_to_host_pointer (CORE_ADDR addr) { void *ptr; - if (sizeof (ptr) != TYPE_LENGTH (builtin_type_void_data_ptr)) - internal_error (__FILE__, __LINE__, - "address_to_host_pointer: bad cast"); + + gdb_assert (sizeof (ptr) == TYPE_LENGTH (builtin_type_void_data_ptr)); ADDRESS_TO_POINTER (builtin_type_void_data_ptr, &ptr, addr); return ptr; }