http://gcc.gnu.org/bugzilla/show_bug.cgi?id=56868
Bug #: 56868
Summary: Constexpr example in 7.1.5/5 fails to compile
correctly
Classification: Unclassified
Product: gcc
Version: 4.7.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: c++
AssignedTo: [email protected]
ReportedBy: [email protected]
// The following example from 7.1.5/5 fails the static assert for g3(0)
constexpr int f(void *) { return 0; }
constexpr int f(...) { return 1; }
constexpr int g1() { return f(0); }
constexpr int g2(int n) { return f(n); }
constexpr int g3(int n) { return f(n*0); }
int main()
{
static_assert(g1() == 0, "g1 failed");
static_assert(g2(0) == 1, "g2 failed");
static_assert(g3(0) == 1, "g3 failed"); // fails, g3(0) returns 0 not 1
}