aboutsummaryrefslogtreecommitdiff
path: root/gcc/cp/constraint.cc
diff options
context:
space:
mode:
authorPatrick Palka <ppalka@redhat.com>2022-03-26 10:20:18 -0400
committerPatrick Palka <ppalka@redhat.com>2022-03-26 10:20:18 -0400
commitff465bd8a0f0f96a00d3067018442917b194b7af (patch)
treef15d80be7e43b2fc92aa879bd2eec915bada60b4 /gcc/cp/constraint.cc
parent04f19580e8dbdbc7366d0f5fd068aa0cecafdc9d (diff)
downloadgcc-ff465bd8a0f0f96a00d3067018442917b194b7af.zip
gcc-ff465bd8a0f0f96a00d3067018442917b194b7af.tar.gz
gcc-ff465bd8a0f0f96a00d3067018442917b194b7af.tar.bz2
c++: diagnosing if-stmt with non-constant branches [PR105050]
When an if-stmt is determined to be non-constant because both of its branches are non-constant, we issue a somewhat generic error which, since the error also points to the 'if' token, misleadingly suggests the condition is at fault: constexpr-105050.C:8:3: error: expression ‘<statement>’ is not a constant expression 8 | if (p != q && *p < 0) | ^~ This patch clarifies the error message to instead read: constexpr-105050.C:8:3: error: neither branch of ‘if’ is a constant expression 8 | if (p != q && *p < 0) | ^~ PR c++/105050 gcc/cp/ChangeLog: * constexpr.cc (potential_constant_expression_1) <case IF_STMT>: Clarify error message when a if-stmt is non-constant because its branches are non-constant. gcc/testsuite/ChangeLog: * g++.dg/cpp1y/constexpr-105050.C: New test.
Diffstat (limited to 'gcc/cp/constraint.cc')
0 files changed, 0 insertions, 0 deletions