On Sat, 21 Apr 2001, Peter Ajamian wrote:
>Would it not be better if it were passed and returned a long, though so
>that it would be compatible with longs on 16 bit platforms? Or maybe
>compilers would complain too much about the implicit conversion from long
>to something less than long on the return?
Perhaps you want:
`-Wconversion'
Warn if a prototype causes a type conversion that is different
from what would happen to the same argument in the absence of a
prototype. This includes conversions of fixed point to floating
and vice versa, and conversions changing the width or signedness
of a fixed point argument except when the same as the default
promotion.
Also, warn if a negative integer constant expression is implicitly
converted to an unsigned type. For example, warn about the
assignment `x = -1' if `x' is unsigned. But do not warn about
explicit casts like `(unsigned) -1'.
You'll need to ignore a lot of system header stupidity though.
It's about time for me to wade through the GCC documentation again and find
every single nit-picky warning to feed the CircleMUD sources through. I
did it around bpl13-ish era with a number of them. -Wshadow is a
particularly evil one. :)
>Take that one step further and maybe even test for implementations that
>have a long long type (it won't be very long until all have long long
>types since C99 supports long long anyways).
If I use C99, I'm using types of the form 'int32', 'uint64', and the like,
not 'long long' and such. (Not the official names, just example.)
--
George Greer
greerga@circlemud.org
--
+---------------------------------------------------------------+
| FAQ: http://qsilver.queensu.ca/~fletchra/Circle/list-faq.html |
| Archives: http://post.queensu.ca/listserv/wwwarch/circle.html |
+---------------------------------------------------------------+
This archive was generated by hypermail 2b30 : 12/05/01 PST