On Wed, Jun 11, 2003 at 11:30:00PM -0400, Phil Edwards wrote: } [EMAIL PROTECTED] removed; no bug was added to the gcc database, } since the email was malformed] } } On Tue, Jun 10, 2003 at 10:32:09PM -0400, Matteo Frigo wrote: } > >Description: } > } > It would be nice if this function issued a warning because of the } > implicit conversion ptrdiff_t -> int: } > } > int foo(int *x, int *y) } > { } > return x - y; } > } } } There is no conversion to int. foo* may be subtracted from foo* for any } type foo. It's normal pointer arithmetic. This code is fine. [...]
Actually, there may be a conversion depending on how wide ptrdiff_t is. If it is the same width as int (and ptrdiff_t is typically typedef'd to int in such cases) there is no problem. If int is smaller than ptrdiff_t, such as with 64-bit addressing on systems with 32-bit ints, there may be an overflow when converting ptrdiff_t to int. Importantly, however, this feature request is unnecessary. The desired feature already exists. See the documentation of the -Wconversion flag. --Greg