NetBSD-Bugs archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: lib/34516: size_t should be equivalent to unsigned long
The following reply was made to PR lib/34516; it has been noted by GNATS.
From: David Holland <dholland%eecs.harvard.edu@localhost>
To: gnats-bugs%netbsd.org@localhost
Cc:
Subject: Re: lib/34516: size_t should be equivalent to unsigned long
Date: Sat, 19 Jan 2008 21:57:34 -0500
> At least on i386, size_t is an alias for unsigned int. In practice,
> unsigned long and size_t are essentially the same types on all
> platforms I know of despite being treated as different types by
> C compilers if defined as such.
> [...]
size_t is not, however, the *same* as unsigned long. Code that
indiscriminately mixes size_t with unsigned long_t is no better than
code that indiscriminately mixes size_t with unsigned int; it is not
portable. It is not clear to me that there is any particular merit to
associated with picking one way over the other. C does not support
newtypes, so there is no way to avoid masking some such set of coding
errors.
Furthermore, the precise expansion of size_t is gcc's choice, because
gcc "knows" the type signatures of various standard functions, so we
can't or shouldn't change it in NetBSD even if there were a good
argument in favor.
--
- David A. Holland / dholland%eecs.harvard.edu@localhost
Home |
Main Index |
Thread Index |
Old Index