http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55039
Bug #: 55039 Summary: std::addressof vs. constexpr Classification: Unclassified Product: gcc Version: 4.8.0 Status: UNCONFIRMED Severity: enhancement Priority: P3 Component: c++ AssignedTo: unassig...@gcc.gnu.org ReportedBy: b...@gcc.gnu.org If std::addressof can be made constexpr, then the iterator member functions of std::array should be able to be made constexpr as well (begin/end, etc.) As it stands, std::addressof calls into std::__addressof, which has a reinterpret_cast, killing constexpr. If some variation of http://gcc.gnu.org/onlinedocs/gcc/Return-Address.html could be extended to support this, then the new intrinsic could be used to implement std::addressof.