Being not declared constexpr
, std::forward
will discard constexpr-ness for any function it forwards arguments to. Why is std::forward
The general answer is that the C++ committee's Library Working Group have not done an exhaustive trawl through the working draft looking for opportunities to use the new core facilities. These features have been used where people have had the time and inclination to look at possible uses, but there is not the time for exhaustive checking.
There are some papers regarding additional uses of constexpr
in the works, such as those in the November 2010 mailing.