diff options
author | Andi Kleen <ak@gcc.gnu.org> | 2024-07-25 13:54:50 -0700 |
---|---|---|
committer | Andi Kleen <ak@gcc.gnu.org> | 2024-07-26 09:31:54 -0700 |
commit | 899ee4815424a73a2b9d899591fab3fcc4520b61 (patch) | |
tree | 999b22ff9ebc123f7f0947b7c273a7ae508cc0d2 /gcc | |
parent | ee41cd863b7c38ee3bc415ea7154954aa6facca3 (diff) | |
download | gcc-899ee4815424a73a2b9d899591fab3fcc4520b61.zip gcc-899ee4815424a73a2b9d899591fab3fcc4520b61.tar.gz gcc-899ee4815424a73a2b9d899591fab3fcc4520b61.tar.bz2 |
PR116019: Improve tail call error message
The "tail call must be the same type" message is common on some
targets with C++, or without optimization. It is generated
when gcc believes there is an access of the return value
after the call. However usually it does not actually corespond
to a type mismatch, but can be caused for other reasons.
Make it slightly more vague to be less misleading.
gcc/ChangeLog:
PR c++/116019
* tree-tailcall.cc (find_tail_calls): Change tail call
error message.
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/tree-tailcall.cc | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/gcc/tree-tailcall.cc b/gcc/tree-tailcall.cc index a68079d..1901b1a 100644 --- a/gcc/tree-tailcall.cc +++ b/gcc/tree-tailcall.cc @@ -632,7 +632,7 @@ find_tail_calls (basic_block bb, struct tailcall **ret, bool only_musttail, && may_be_aliased (result_decl) && ref_maybe_used_by_stmt_p (call, result_decl, false)) { - maybe_error_musttail (call, _("tail call must be same type")); + maybe_error_musttail (call, _("return value used after call")); return; } |