From mboxrd@z Thu Jan 1 00:00:00 1970 From: Neil Booth To: gcc@gcc.gnu.org Cc: Zack Weinberg Subject: Preprocessor arithmetic Date: Mon, 13 Nov 2000 15:41:00 -0000 Message-id: <20001113234100.A9631@daikokuya.demon.co.uk> X-SW-Source: 2000-11/msg00579.html Can someone explain to me what is wrong with CPP's arithmetic (as referred to on the web page)? All arithmetic in CPP is done in HOST_WIDEST_INT. My understanding is that this is the widest integer that GCC can support on the host; which is usually twice the processor's native widest integer (itself being HOST_WIDE_INT). If I don't have it right so far, please correct me. The standard defines intmax_t and uintmax_t as the "greatest width integer types"; capable of representing any value of any (un)signed type. Preprocessor arithmetic should be done in these types. These types seem to be the same thing to me. What am I missing? Neil.