Boost logo

Boost :

From: Eric Niebler (eric_at_[hidden])
Date: 2007-06-14 18:21:21


David Abrahams wrote:
> on Thu Jun 14 2007, Eric Niebler <eric-AT-boost-consulting.com> wrote:
>> I also seem to recall that there was still some question as to whether
>> the use of the reference violated the ODR, if the reference is not
>> optimized away. I don't think we ever got an answer to that question.
>
> I don't think there ever was any question about that. At least, I
> never had a question about it. References don't have any identity
> distinct from the object they reference.

Funny you should say that, since you were the one who sent the "Are
references subject to ODR?" question to the std reflector:

> David Abrahams <dave_at_[hidden]>
> 4/1/06
> reply-to c++std-core_at_[hidden]
> to undisclosed-recipients <>
> date Apr 1, 2006 9:02 AM
> subject Are references subject to ODR?
> To: C++ core language mailing list
> Message c++std-core-11390
>
> Is the following program legal?
>
> // a.cpp
> int x;
> int& y = x;
>
> // b.cpp
> extern int x;
> int& y = x;
>
> My impression is that it is not legal because references are not
> explicitly given an exemption in 3.2/5
>
> If I am right, should it be so? It's hard to imagine how this could
> be a problem.

The result of ensuing discussion was that a reference is a pointer, and
so they *do* have identity.

-- 
Eric Niebler
Boost Consulting
www.boost-consulting.com
The Astoria Seminar ==> http://www.astoriaseminar.com

Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk