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: unassig...@gcc.gnu.org

        ReportedBy: g++...@oxyware.com





// 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

}

Reply via email to