https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101902
--- Comment #1 from Jan Hubicka <hubicka at ucw dot cz> ---
Hi,
i am testing
diff --git a/gcc/tree-ssa-uninit.c b/gcc/tree-ssa-uninit.c
index 5d7bc800419..d89ab5423cd 100644
--- a/gcc/tree-ssa-uninit.c
+++ b/gcc/tree-ssa-uninit.c
@@ -641,7 +641,7 @@ maybe_warn_pass_by_reference (gcall *stmt, wlimits &wlims)
wlims.always_executed = false;
/* Ignore args we are not going to read from. */
- if (gimple_call_arg_flags (stmt, argno - 1) & EAF_UNUSED)
+ if (gimple_call_arg_flags (stmt, argno - 1) & (EAF_UNUSED | EAF_NOREAD))
continue;
tree arg = gimple_call_arg (stmt, argno - 1);