This is the mail archive of the
gdb@sources.redhat.com
mailing list for the GDB project.
Re: Replace char * with something sensible
- From: Daniel Jacobowitz <drow at false dot org>
- To: gdb at sources dot redhat dot com
- Date: Tue, 3 May 2005 15:58:15 -0400
- Subject: Re: Replace char * with something sensible
- References: <01c55019$Blat.v2.4$95304420@zahav.net.il>
On Tue, May 03, 2005 at 10:51:02PM +0300, Eli Zaretskii wrote:
> Rumor has it that latest versions of GCC whine about mixing "char *"
> and "unsigned char *". To fix that, Andrew committed some patches
> that replace these with a "bfd_byte *", but I think we should not use
> BFD data types in GDB unless they refer to data structures returned by
> functions from the BFD library.
>
> Possible solutions:
>
> . use "void *" (suggested by Mark Kettenis).
>
> . define a new data type gdb_byte and use "gdb_byte *".
>
> I think Mark's suggestion should be considered first, since it avoids
> the pain of introducing yet another custom data type.
I am marginally in favor of gdb_byte. What pain would it cause,
besides a huge sed for the existing bfd_byte cases?
These are byte-oriented buffers, so using a type where we can perform
byte-oriented arithmetic without superfluous casts seems like a good
choice to me. Converting to void * (and not using the GCC extension
which allows arithmetic on void *) would be a painful process.
It's not as if non-8-bit-byte support is anywhere on our horizon.
--
Daniel Jacobowitz
CodeSourcery, LLC