aboutsummaryrefslogtreecommitdiff
path: root/gcc/cp/error.cc
diff options
context:
space:
mode:
authorJakub Jelinek <jakub@redhat.com>2024-03-26 10:03:27 +0100
committerJakub Jelinek <jakub@redhat.com>2024-03-26 10:04:31 +0100
commit10accfde57951db9f726e996f1b0be165df00f5c (patch)
tree556af19d4c4c842bc470c6dccaefaf4145682d41 /gcc/cp/error.cc
parent4470611e20f3217ee81647b01fda65b6a62229aa (diff)
downloadgcc-10accfde57951db9f726e996f1b0be165df00f5c.zip
gcc-10accfde57951db9f726e996f1b0be165df00f5c.tar.gz
gcc-10accfde57951db9f726e996f1b0be165df00f5c.tar.bz2
c-family, c++: Handle EXCESS_PRECISION_EXPR in pretty printers [PR112724]
I've noticed that the c-c++-common/gomp/depobj-3.c test FAILs on i686-linux: PASS: c-c++-common/gomp/depobj-3.c -std=c++17 at line 17 (test for warnings, line 15) FAIL: c-c++-common/gomp/depobj-3.c -std=c++17 at line 39 (test for warnings, line 37) PASS: c-c++-common/gomp/depobj-3.c -std=c++17 at line 43 (test for errors, line 41) PASS: c-c++-common/gomp/depobj-3.c -std=c++17 (test for warnings, line 45) FAIL: c-c++-common/gomp/depobj-3.c -std=c++17 (test for excess errors) Excess errors: /home/jakub/src/gcc/gcc/testsuite/c-c++-common/gomp/depobj-3.c:37:38: warning: the 'destroy' expression ''excess_precision_expr' not supported by dump_expr<expression error>' should +be the same as the 'depobj' argument 'obj' [-Wopenmp] The following patch replaces that 'excess_precision_expr' not supported by dump_expr<expression error> with (float)(((long double)a) + (long double)5) Still ugly and doesn't actually fix the FAIL (will deal with that incrementally), but at least valid C/C++ and shows the excess precision handling in action. 2024-03-26 Jakub Jelinek <jakub@redhat.com> PR c++/112724 gcc/c-family/ * c-pretty-print.cc (pp_c_cast_expression, c_pretty_printer::expression): Handle EXCESS_PRECISION_EXPR like NOP_EXPR. gcc/cp/ * error.cc (dump_expr): Handle EXCESS_PRECISION_EXPR like NOP_EXPR.
Diffstat (limited to 'gcc/cp/error.cc')
-rw-r--r--gcc/cp/error.cc1
1 files changed, 1 insertions, 0 deletions
diff --git a/gcc/cp/error.cc b/gcc/cp/error.cc
index d3fcac7..7074845 100644
--- a/gcc/cp/error.cc
+++ b/gcc/cp/error.cc
@@ -2662,6 +2662,7 @@ dump_expr (cxx_pretty_printer *pp, tree t, int flags)
CASE_CONVERT:
case IMPLICIT_CONV_EXPR:
case VIEW_CONVERT_EXPR:
+ case EXCESS_PRECISION_EXPR:
{
tree op = TREE_OPERAND (t, 0);