Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 28 Jan 2008 19:23:50 +0300
From:      Yar Tikhiy <yar@comp.chem.msu.su>
To:        Dag-Erling Sm?rgrav <des@des.no>, cvs-src@FreeBSD.org, src-committers@FreeBSD.org, cvs-all@FreeBSD.org, "David O'Brien" <obrien@FreeBSD.org>
Subject:   Re: cvs commit: src UPDATING src/include fts.h src/lib/libc/gen Makefile.inc Symbol.map fts-compat.c fts-compat.h fts.3 fts.c src/sys/sys param.h
Message-ID:  <20080128162350.GQ49535@comp.chem.msu.su>
In-Reply-To: <20080128111434.GA68277@owl.midgard.homeip.net>
References:  <200801261709.m0QH9f2D024309@repoman.freebsd.org> <20080127043334.GA75235@dragon.NUXI.org> <20080127053813.GH49535@comp.chem.msu.su> <20080127094653.GA74753@dragon.NUXI.org> <20080128053514.GK49535@comp.chem.msu.su> <86odb6usm6.fsf@ds4.des.no> <20080128111434.GA68277@owl.midgard.homeip.net>

next in thread | previous in thread | raw e-mail | index | archive | help
On Mon, Jan 28, 2008 at 12:14:35PM +0100, Erik Trulsson wrote:
> On Mon, Jan 28, 2008 at 11:55:29AM +0100, Dag-Erling Sm?rgrav wrote:
> > 
> > > Userland code should be portable and useful to other systems in the
> > > chosen domain of compatibility, e.g., C99 or POSIX, unless there
> > > are substantial reasons for it not to.  That's how different projects
> > > can benefit from each other's work.
> > 
> > Both C99 and POSIX *require* int64_t and uint64_t on all platforms that
> > have 64-bit integer types.
> > 
> > FreeBSD has never run on any platform that doesn't.  I don't think
> > NetBSD or OpenBSD has either, nor Solaris, nor Linux to my knowledge.
> 
> Those are all good reasons for why using 'int64_t' would be OK.
> None of it is a reason for why using 'long long' would not be OK when you
> want at least 64 bits, but do not require exactly 64 bits.

Thank you for telling this very valid point.  People tend to forget
that [u]intN_t types are actually called for only when a particular
_exact_ bit width is needed, e.g., to get unsigned arithmetics
modulo 2^N, or to match a hardware register or a network packet field.

-- 
Yar



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20080128162350.GQ49535>