Path: utzoo!mnetor!uunet!lll-winken!lll-lcc!ames!necntc!ima!haddock!karl From: karl@haddock.ISC.COM (Karl Heuer) Newsgroups: comp.lang.c Subject: Re: C machine Message-ID: <2452@haddock.ISC.COM> Date: 2 Feb 88 23:58:33 GMT References: <461@auvax.UUCP> <28700025@ccvaxa> <7159@brl-smoke.ARPA> <8728@ism780c.UUCP> <7199@brl-smoke.ARPA> <8817@ism780c.UUCP> Reply-To: karl@haddock.ima.isc.com (Karl Heuer) Organization: Interactive Systems, Boston Lines: 17 In article <8817@ism780c.UUCP> marv@ism780.UUCP (Marvin Rubenstein) writes: >The problem I (Marv Rubinstein) was trying to address is that soon (hopfully >before we discard C) there will be machines with 48 bit (or longer) pointers >and 32 bit arithmetic registers. I also noted this problem. Apparently an implementation can still be conforming if it has additional types (using, say, `__verylong int' rather than `long long int', so as to avoid violating a constraint). The type of ptrdiff_t must be a signed arithmetic type. Must it be one of the standard arithmetic types, or is it permissible for it to be larger than a long int? I'm not sure what the dpANS says about this. Btw, one solution for the printf-format problem is to require something like #define FORMAT_TIME_T "%ld" #define FORMAT_PTRDIFF_T "%d" in some header file; string pasting makes this feasible. Karl W. Z. Heuer (ima!haddock!karl or karl@haddock.isc.com), The Walking Lint