Blob Blame History Raw
2006-11-07  Alexandre Oliva  <aoliva@redhat.com>

	* tree-inline.c (expand_call_inline): Set BLOCK_SOURCE_LOCATION.

--- gcc/tree-inline.c.orig	2006-10-13 04:31:24.000000000 -0300
+++ gcc/tree-inline.c	2006-11-07 04:06:10.000000000 -0200
@@ -1253,6 +1253,7 @@ expand_call_inline (tree *tp, int *walk_
   tree args;
   tree return_slot_addr;
   const char *reason;
+  location_t incoming_loc = input_location;
 
   /* See what we've got.  */
   id = (inline_data *) data;
@@ -1464,7 +1465,10 @@ expand_call_inline (tree *tp, int *walk_
   /* Tell the debugging backends that this block represents the
      outermost scope of the inlined function.  */
   if (SCOPE_STMT_BLOCK (scope_stmt))
-    BLOCK_ABSTRACT_ORIGIN (SCOPE_STMT_BLOCK (scope_stmt)) = DECL_ORIGIN (fn);
+    {
+      BLOCK_ABSTRACT_ORIGIN (SCOPE_STMT_BLOCK (scope_stmt)) = DECL_ORIGIN (fn);
+      BLOCK_SOURCE_LOCATION (SCOPE_STMT_BLOCK (scope_stmt)) = incoming_loc;
+    }
 
   /* Declare the return variable for the function.  */
   COMPOUND_BODY (stmt)