From: buers AT gmx DOT de (Dieter Buerssner) Newsgroups: comp.os.msdos.djgpp Subject: Re: C++, complex, etc Date: 23 May 2000 17:57:25 GMT Lines: 18 Message-ID: <8geo6n.3vs6dg1.0@buerssner-17104.user.cis.dfn.de> References: <0rneisomj48fm3khdpdodsilqpndjqd7do AT 4ax DOT com> <1osjis87hetlomjooiv6prc0iev46cncdt AT 4ax DOT com> <200005230314 DOT XAA01009 AT envy DOT delorie DOT com> <8gdbeu$dke$1 AT antares DOT lu DOT erisoft DOT se> NNTP-Posting-Host: pec-107-56.tnt6.s2.uunet.de (149.225.107.56) Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 8bit X-Trace: fu-berlin.de 959104645 1268770 149.225.107.56 (16 [17104]) X-Posting-Agent: Hamster/1.3.13.0 User-Agent: Xnews/03.02.04 To: djgpp AT delorie DOT com DJ-Gateway: from newsgroup comp.os.msdos.djgpp Reply-To: djgpp AT delorie DOT com Martin Stromberg wrote: >So we should change ptrdiff_t to "signed long long int"? I think, this wouldn't work. If you have ptrdiff_t pd; char *p1, *p2; ... pd = p2 - p1; The subtraction will be done in 32 bit arithmetic, which will incorrectly wrap, when the difference is >= 2^31. This is a catch 22. -- Regards, Dieter Buerssner