aboutsummaryrefslogtreecommitdiff
path: root/gcc/ada/gcc-interface/trans.c
diff options
context:
space:
mode:
authorEric Botcazou <ebotcazou@adacore.com>2021-05-21 10:26:50 +0200
committerEric Botcazou <ebotcazou@adacore.com>2021-05-21 10:26:50 +0200
commitb1cd7461ecc4d6572b3984e889d59e6e5b651a5f (patch)
tree303d91e1600c957dd19c3712027f2af0d9653d8f /gcc/ada/gcc-interface/trans.c
parente5bfda020425f22b67936e916f0b284bad108b65 (diff)
downloadgcc-b1cd7461ecc4d6572b3984e889d59e6e5b651a5f.zip
gcc-b1cd7461ecc4d6572b3984e889d59e6e5b651a5f.tar.gz
gcc-b1cd7461ecc4d6572b3984e889d59e6e5b651a5f.tar.bz2
Fix incorrect SLOC on instruction
This puts the missing SLOC on a statement generated by a return. gcc/ada/ * gcc-interface/trans.c (gnat_to_gnu) <N_Simple_Return_Statement>: Put a SLOC on the assignment from the return value to the return object in the copy-in/copy-out case.
Diffstat (limited to 'gcc/ada/gcc-interface/trans.c')
-rw-r--r--gcc/ada/gcc-interface/trans.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/gcc/ada/gcc-interface/trans.c b/gcc/ada/gcc-interface/trans.c
index 9aeaf03..f568647 100644
--- a/gcc/ada/gcc-interface/trans.c
+++ b/gcc/ada/gcc-interface/trans.c
@@ -7624,8 +7624,10 @@ gnat_to_gnu (Node_Id gnat_node)
if (gnu_return_label_stack->last ())
{
if (gnu_ret_val)
- add_stmt (build_binary_op (MODIFY_EXPR, NULL_TREE, gnu_ret_obj,
- gnu_ret_val));
+ add_stmt_with_node (build_binary_op (MODIFY_EXPR,
+ NULL_TREE, gnu_ret_obj,
+ gnu_ret_val),
+ gnat_node);
gnu_result = build1 (GOTO_EXPR, void_type_node,
gnu_return_label_stack->last ());