aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorKwok Cheung Yeung <kcy@codesourcery.com>2022-06-30 15:31:41 +0100
committerKwok Cheung Yeung <kcy@codesourcery.com>2022-06-30 19:47:28 +0100
commite9ee746093bd989c33685e3197c75b901aef2cc1 (patch)
tree9f27a7fcb7cb2f1bca57e0e6f15986266b1d5e17 /gcc
parented03ae94cfa2890bbfedc4e3f96b588553a19dc5 (diff)
downloadgcc-e9ee746093bd989c33685e3197c75b901aef2cc1.zip
gcc-e9ee746093bd989c33685e3197c75b901aef2cc1.tar.gz
gcc-e9ee746093bd989c33685e3197c75b901aef2cc1.tar.bz2
Fix string formatting issues
Stricter format-string checking in more recent versions of GCC can cause build failures. 2022-06-30 Kwok Cheung Yeung <kcy@codesourcery.com> gcc/ * omp-data-optimize.cc (omp_data_optimize_add_candidate): Suppress format checking. (omp_data_optimize_can_be_private): Likewise. (omp_data_optimize_can_be_private): Likewise. (This should be a fixup to ab53d5a6a27dce2a92f28a62ceb6e184c8356f25: 'openacc: Add data optimization pass') 2022-06-30 Kwok Cheung Yeung <kcy@codesourcery.com> gcc/ * gimplify.cc (gimplify_scan_omp_clauses): Remove extra '%<..%>' pair in format string. (This should be a fixup to dbc770c4351c8824e8083f8aff6117a6b4ba3c0d: 'openmp: Implement uses_allocators clause')
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog.omp12
-rw-r--r--gcc/gimplify.cc2
-rw-r--r--gcc/omp-data-optimize.cc28
3 files changed, 41 insertions, 1 deletions
diff --git a/gcc/ChangeLog.omp b/gcc/ChangeLog.omp
index 2974013..1455a96 100644
--- a/gcc/ChangeLog.omp
+++ b/gcc/ChangeLog.omp
@@ -1,3 +1,15 @@
+2022-06-30 Kwok Cheung Yeung <kcy@codesourcery.com>
+
+ * gimplify.cc (gimplify_scan_omp_clauses): Remove extra
+ '%<..%>' pair in format string.
+
+2022-06-30 Kwok Cheung Yeung <kcy@codesourcery.com>
+
+ * omp-data-optimize.cc (omp_data_optimize_add_candidate): Suppress
+ format checking.
+ (omp_data_optimize_can_be_private): Likewise.
+ (omp_data_optimize_can_be_private): Likewise.
+
2022-05-13 Kwok Cheung Yeung <kcy@codesourcery.com>
* omp-expand.cc (expand_omp_target): Gimplify launch dimensions used
diff --git a/gcc/gimplify.cc b/gcc/gimplify.cc
index 8e8151c..e0af570 100644
--- a/gcc/gimplify.cc
+++ b/gcc/gimplify.cc
@@ -11384,7 +11384,7 @@ gimplify_scan_omp_clauses (tree *list_p, gimple_seq *pre_p,
}
if (uc == NULL_TREE)
{
- error_at (OMP_CLAUSE_LOCATION (c), "allocator %<%qE%> "
+ error_at (OMP_CLAUSE_LOCATION (c), "allocator %qE "
"requires %<uses_allocators(%E)%> clause in "
"target region", allocator, allocator);
remove = true;
diff --git a/gcc/omp-data-optimize.cc b/gcc/omp-data-optimize.cc
index 31f615c..a64f933 100644
--- a/gcc/omp-data-optimize.cc
+++ b/gcc/omp-data-optimize.cc
@@ -154,6 +154,10 @@ omp_data_optimize_add_candidate (const dump_user_location_t &loc, tree var,
inhibit_descriptor in;
in.stmt = NULL;
+#if __GNUC__ >= 10
+# pragma GCC diagnostic push
+# pragma GCC diagnostic ignored "-Wformat"
+#endif
if (DECL_EXTERNAL (var))
{
if (dump_enabled_p () && dump_flags & TDF_DETAILS)
@@ -187,6 +191,9 @@ omp_data_optimize_add_candidate (const dump_user_location_t &loc, tree var,
in.kind = INHIBIT_NOT;
}
+#if __GNUC__ >= 10
+# pragma GCC diagnostic pop
+#endif
if (state->candidates.put (var, in))
gcc_unreachable ();
@@ -575,6 +582,10 @@ omp_data_optimize_can_be_private (tree var, gimple *target_stmt)
state.bb = *state.scanned_bb.get (root_id);
}
+#if __GNUC__ >= 10
+# pragma GCC diagnostic push
+# pragma GCC diagnostic ignored "-Wformat"
+#endif
if (dump_enabled_p () && dump_flags & TDF_DETAILS)
{
for (hash_map<const void*,ODO_BB>::iterator it = state.scanned_bb.begin ();
@@ -613,6 +624,9 @@ omp_data_optimize_can_be_private (tree var, gimple *target_stmt)
: state.bb.access == ACCESS_UNKNOWN
? "complex control flow"
: "unknown reason"));
+#if __GNUC__ >= 10
+# pragma GCC diagnostic pop
+#endif
return state.bb.access == ACCESS_DEF_FIRST;
}
@@ -698,12 +712,19 @@ omp_data_optimize_stmt_target (gimple *stmt, ODO_State *state)
if (!id) {
/* The variable was not a parameter or named in any bind, so it
must be in an external scope, and therefore live-on-exit. */
+#if __GNUC__ >= 10
+# pragma GCC diagnostic push
+# pragma GCC diagnostic ignored "-Wformat"
+#endif
if (dump_enabled_p ())
dump_printf_loc(MSG_MISSED_OPTIMIZATION, DUMP_LOC (*pc),
"%qs not optimized: %<%T%> is unsuitable"
" for privatization\n",
c_s_prev, var);
continue;
+#if __GNUC__ >= 10
+# pragma GCC diagnostic pop
+#endif
}
switch (id->kind)
@@ -746,6 +767,10 @@ omp_data_optimize_stmt_target (gimple *stmt, ODO_State *state)
}
break;
+#if __GNUC__ >= 10
+# pragma GCC diagnostic push
+# pragma GCC diagnostic ignored "-Wformat"
+#endif
case INHIBIT_USE: /* Optimization inhibited by a variable use. */
if (dump_enabled_p ())
{
@@ -776,6 +801,9 @@ omp_data_optimize_stmt_target (gimple *stmt, ODO_State *state)
" for privatization\n", c_s_prev, var);
}
break;
+#if __GNUC__ >= 10
+# pragma GCC diagnostic pop
+#endif
default:
gcc_unreachable ();