This page is a snapshot from the LWG issues list, see the Library Active Issues List for more information and the meaning of C++11 status.

### 999. Taking the address of a function

Section: 27.11 [specialized.algorithms] Status: C++11 Submitter: Peter Dimov Opened: 2009-03-09 Last modified: 2016-01-28

Priority: Not Prioritized

View other active issues in [specialized.algorithms].

View all other issues in [specialized.algorithms].

View all issues with C++11 status.

Discussion:

The same fix (reference 987) may be applied to `addressof`, which is also constrained to `ObjectType`. (That was why `boost::ref` didn't work with functions - it tried to apply `boost::addressof` and the `reinterpret_cast<char&>` implementation of `addressof` failed.)

[ Batavia (2009-05): ]

> We agree.

> Move to Tentatively Ready.

[ 2009-07 Frankfurt ]

> Moved from Tentatively Ready to Open only because the wording needs to be tweaked for concepts removal.

[ 2009-10-10 Daniel updates wording to concept-free. ]

[ 2009-10 post-Santa Cruz: ]

> Move to Tentatively Ready.

Proposed resolution:

[ The resolution assumes that `addressof` is reintroduced as described in n2946 ]

In 27.11 [specialized.algorithms] change as described:

>     template <class T> T* addressof(T& r);

> > Returns: The actual address of the object or function referenced by `r`, even in the presence of an overloaded `operator&`.