From -2493094956016514139
X-Google-Language: ENGLISH,ASCII-7-bit
X-Google-Thread: f78e5,e94695845965b249
X-Google-Attributes: gidf78e5,public
X-Google-ArrivalTime: 1992-12-12 01:18:57 PST
Path: sparky!uunet!spool.mu.edu!uwm.edu!linac!att!att!allegra!alice!ark
From: ark@alice.att.com (Andrew Koenig)
Newsgroups: comp.std.c++
Subject: Re: Zero-length structures and pointer comparisons
Message-ID: <24392@alice.att.com>
Date: 12 Dec 92 06:25:32 GMT
Article-I.D.: alice.24392
References: <9234423.15066@mulga.cs.mu.OZ.AU> <1992Dec10.121200.18889@ucc.su.OZ.AU> <9234601.10277@mulga.cs.mu.OZ.AU> <1992Dec11.231131.10956@microsoft.com>
Reply-To: ark@alice.UUCP ()
Organization: AT&T Bell Laboratories, Murray Hill NJ
Lines: 15

In article <1992Dec11.231131.10956@microsoft.com> jimad@microsoft.com (Jim Adcock) writes:

> So that taking the address of a nested function in different scopes
> causes differing trampolines to be created, and differing pointers returned?

It shouldn't need to do that.  At most one trampoline is ever necessary
for a given nested function during its lifetime, namely the one that
binds the lexically surrounding context that was current when the
block containing the definition of that function was entered.

Moreover, that trampoline address is unique until the corresponding
function has gone out of scope, at which point the address is moot.
-- 
				--Andrew Koenig
				  ark@europa.att.com


