Article View: comp.std.c++
Article #1279Re: Zero-length structures and pointer comparisons
From: Scott Turner
Date: Thu, 17 Dec 1992 15:09
Date: Thu, 17 Dec 1992 15:09
34 lines
2205 bytes
2205 bytes
In article <1992Dec15.162202.11231@ucc.su.OZ.AU> John (Max) Skaller writes: > In article <1992Dec11.230534.10499@microsoft.com> Jim Adcock writes: > >No more nor less than any other virtual memory OS that allows > >multiply mapped pages. Since there is no functionality in the > >language requiring such multiply mapped pages, you only get in > >this situation by invoking some system dependency, in which case > >you are making use of implementation dependencies. > But Jim, it is not implementation defined, it is required that > pointers to the same object compare equal. > It is therefore not > allowed to do this sort of memory mapping in C++ behind the scenes, > which is what I'm concerned with...we actually want to. It makes me uneasy, but I think Jim Adcock is correct: an implementation can define an extension, such as memory mapping, which overrides the usual execution time rules of C/C++, including the rule that pointers to the same object compare equal. The rule that 1+1==2 would likewise be subject to "extension". Nevertheless, the C standard implies that the onus is on the invoker of memory mapping to be aware of libraries and other code which may rely on the usual execution time rules of C/C++, such as the rule that pointers to the same object compare equal. If we don't want libraries to make that assumption, then John (Max) Skaller is also correct to say > So the question is really whether the requirement that pointers to > the same object compare equal should be left implementation defined. -- Prescott K. Turner, Jr. Liant Software Corp. (developers of LPI languages) 959 Concord St., Framingham, MA 01701 USA (508) 872-8700 UUCP: uunet!lpi!pkt Internet: pkt@lpi.liant.com
Technical Details
Message-ID:
<1992Dec17.150914.2783@lpi.liant.com>Path:
arc1-ca.pugleaf.net!sparky!uunet!titan!lpi!pktReferences:
<1992Dec11.230534.10499@microsoft.com> <1992Dec15.162202.11231@ucc.su.OZ.AU>Show Full Headers
Complete Article Headers
Newsgroups: comp.std.c++ Path: arc1-ca.pugleaf.net!sparky!uunet!titan!lpi!pkt From: pkt@lpi.liant.com (Scott Turner) Subject: Re: Zero-length structures and pointer comparisons Message-ID: <1992Dec17.150914.2783@lpi.liant.com> Sender: pkt@lpi (Scott Turner) Organization: Liant Software Corporation References: <1992Dec11.230534.10499@microsoft.com> <1992Dec15.162202.11231@ucc.su.OZ.AU> Date: Thu, 17 Dec 1992 15:09:14 GMT Lines: 34