[Bug c++/66477] New: [constexpr] accepts-invalid with constexpr member call on non-constant reference

richard-gccbugzilla at metafoo dot co.uk gcc-bugzilla@gcc.gnu.org
Tue Jun 9 18:39:00 GMT 2015


https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66477

            Bug ID: 66477
           Summary: [constexpr] accepts-invalid with constexpr member call
                    on non-constant reference
           Product: gcc
           Version: 5.1.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: c++
          Assignee: unassigned at gcc dot gnu.org
          Reporter: richard-gccbugzilla at metafoo dot co.uk
  Target Milestone: ---

GCC accepts this invalid code:

  struct a { constexpr int size() const { return 3; } };
  void f(a &r) { static_assert(r.size() == 3, "error"); }

The static_assert condition is non-constant because it mentions the reference
'r' whose referent is not known within that constant expression.



More information about the Gcc-bugs mailing list