diff options
author | Bernhard Reutner-Fischer <rep.dot.nop@gmail.com> | 2022-11-20 18:06:04 +0100 |
---|---|---|
committer | Jason Merrill <jason@redhat.com> | 2022-12-02 14:17:53 -0500 |
commit | d19aa6af6634b1e97f38431ad091f3b3f12baf2f (patch) | |
tree | 613da0d1266dc37b38754f68de5f2dc491eaa40c /gcc/cp/method.cc | |
parent | 76dd48f8956b5e17adf0ae1cd1ed3d804a005470 (diff) | |
download | gcc-d19aa6af6634b1e97f38431ad091f3b3f12baf2f.zip gcc-d19aa6af6634b1e97f38431ad091f3b3f12baf2f.tar.gz gcc-d19aa6af6634b1e97f38431ad091f3b3f12baf2f.tar.bz2 |
c++: Set the locus of the function result decl
gcc/cp/ChangeLog:
* decl.cc (grokdeclarator): Build RESULT_DECL.
(start_preparsed_function): Copy location from template.
* semantics.cc (apply_deduced_return_type): Handle
arg != current_function_decl.
* method.cc (implicitly_declare_fn): Use it.
gcc/ChangeLog:
* function.cc (init_function_start): Use DECL_RESULT location
for -Waggregate-return warning.
gcc/testsuite/ChangeLog:
* g++.dg/diagnostic/return-type-loc1.C: New test.
Co-authored-by: Jason Merrill <jason@redhat.com>
Diffstat (limited to 'gcc/cp/method.cc')
-rw-r--r-- | gcc/cp/method.cc | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/gcc/cp/method.cc b/gcc/cp/method.cc index 1e962b6..7b4d5a5 100644 --- a/gcc/cp/method.cc +++ b/gcc/cp/method.cc @@ -3079,7 +3079,7 @@ implicitly_declare_fn (special_function_kind kind, tree type, { fn = copy_operator_fn (pattern_fn, EQ_EXPR); DECL_ARTIFICIAL (fn) = 1; - TREE_TYPE (fn) = change_return_type (boolean_type_node, TREE_TYPE (fn)); + apply_deduced_return_type (fn, boolean_type_node); return fn; } |