]> git.ipfire.org Git - thirdparty/gcc.git/commit
Factor out static_assert constexpr string extraction for reuse
authorAndi Kleen <ak@linux.intel.com>
Mon, 6 May 2024 05:40:20 +0000 (22:40 -0700)
committerAndi Kleen <ak@linux.intel.com>
Tue, 11 Jun 2024 16:50:45 +0000 (09:50 -0700)
commit6ef8c905e0064c4dfb7ca302355fc20cb96b147b
treefe229d3b964628f70086c9cba0ae326ce8bb6cef
parent2f0c09c00b8ccf41c27d4b7ba0cafdeb99242a29
Factor out static_assert constexpr string extraction for reuse

The only semantics changes are slightly more vague error messages
to generalize.

gcc/cp/ChangeLog:

* cp-tree.h (class cexpr_str): Add.
* semantics.cc (finish_static_assert): Convert to use cexpr_str.
(cexpr_str::type_check): Extract constexpr string code to here.
(cexpr_str::extract): ... and here.

gcc/testsuite/ChangeLog:

* g++.dg/cpp26/static_assert1.C: Update to new error message.
* g++.dg/cpp0x/udlit-error1.C: Dito.
gcc/cp/cp-tree.h
gcc/cp/semantics.cc
gcc/testsuite/g++.dg/cpp0x/udlit-error1.C
gcc/testsuite/g++.dg/cpp26/static_assert1.C