aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorBernhard Reutner-Fischer <aldot@gcc.gnu.org>2023-06-01 19:44:19 +0200
committerBernhard Reutner-Fischer <aldot@gcc.gnu.org>2023-11-15 18:38:45 +0100
commit186331063dfbcf1eacb445c473d92634c9baa90f (patch)
treee6cf8e7ad41ffc7f9f4629e239f723deb36a9520 /gcc
parentd1189ceefc1da1515e039c9cfd2f5a67b5820207 (diff)
downloadgcc-186331063dfbcf1eacb445c473d92634c9baa90f.zip
gcc-186331063dfbcf1eacb445c473d92634c9baa90f.tar.gz
gcc-186331063dfbcf1eacb445c473d92634c9baa90f.tar.bz2
c++, analyzer: Expand CAN_HAVE_LOCATION_P macro.
r14-985-gca2007a9bb3074 used the collapsed macro definition CAN_HAVE_LOCATION_P in gcc-rich-location.cc and r14-977-g8861c80733da5c in c++'s build_cplus_array_type (). However, although otherwise correct, the usage of CAN_HAVE_LOCATION_P in these two spots is misleading, so this patch reverts aforementioned two hunks. gcc/cp/ChangeLog: * tree.cc (build_cplus_array_type): Revert using the macro CAN_HAVE_LOCATION_P. gcc/ChangeLog: * gcc-rich-location.cc (maybe_range_label_for_tree_type_mismatch::get_text): Revert using the macro CAN_HAVE_LOCATION_P.
Diffstat (limited to 'gcc')
-rw-r--r--gcc/cp/tree.cc2
-rw-r--r--gcc/gcc-rich-location.cc2
2 files changed, 2 insertions, 2 deletions
diff --git a/gcc/cp/tree.cc b/gcc/cp/tree.cc
index 0736e8d..5279579 100644
--- a/gcc/cp/tree.cc
+++ b/gcc/cp/tree.cc
@@ -1171,7 +1171,7 @@ build_cplus_array_type (tree elt_type, tree index_type, int dependent)
}
/* Avoid spurious warnings with VLAs (c++/54583). */
- if (CAN_HAVE_LOCATION_P (TYPE_SIZE (t)))
+ if (TYPE_SIZE (t) && EXPR_P (TYPE_SIZE (t)))
suppress_warning (TYPE_SIZE (t), OPT_Wunused);
/* Push these needs up to the ARRAY_TYPE so that initialization takes
diff --git a/gcc/gcc-rich-location.cc b/gcc/gcc-rich-location.cc
index 068df1c..2fb0cc7 100644
--- a/gcc/gcc-rich-location.cc
+++ b/gcc/gcc-rich-location.cc
@@ -203,7 +203,7 @@ maybe_range_label_for_tree_type_mismatch::get_text (unsigned range_idx) const
tree expr_type = TREE_TYPE (m_expr);
tree other_type = NULL_TREE;
- if (CAN_HAVE_LOCATION_P (m_other_expr))
+ if (m_other_expr && EXPR_P (m_other_expr))
other_type = TREE_TYPE (m_other_expr);
range_label_for_type_mismatch inner (expr_type, other_type);