optimize.c (expand_call_inline): Set BLOCK_ABSTRACT_ORIGIN on the outermost block...
authorJason Merrill <jason@casey.cygnus.com>
Wed, 15 Dec 1999 09:03:06 +0000 (09:03 +0000)
committerJason Merrill <jason@gcc.gnu.org>
Wed, 15 Dec 1999 09:03:06 +0000 (04:03 -0500)
        * optimize.c (expand_call_inline): Set BLOCK_ABSTRACT_ORIGIN on the
        outermost block to point to the inlined function decl.

From-SVN: r30945

gcc/cp/ChangeLog
gcc/cp/optimize.c

index 0614ab00eb0a139626314dc1e4677600518085c3..35a5690366819a60165b2cea34c7bee342272a4c 100644 (file)
@@ -1,5 +1,8 @@
 1999-12-14  Jason Merrill  <jason@casey.cygnus.com>
 
+       * optimize.c (expand_call_inline): Set BLOCK_ABSTRACT_ORIGIN on the
+       outermost block to point to the inlined function decl.
+
        * error.c (dump_decl): operator==, not operator ==.
        (op_to_string): Likewise.
 
index 50ee83efe91bbd0cba1a4f393deffbdaf4d656f0..5dcecf143d5c114a278a125195fab95605624170 100644 (file)
@@ -614,6 +614,11 @@ expand_call_inline (tp, walk_subtrees, data)
   STMT_EXPR_STMT (expr) = scope_stmt;
   id->scope_stmt = scope_stmt;
 
+  /* 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);
+
   /* Declare the return variable for the function.  */
   STMT_EXPR_STMT (expr)
     = chainon (STMT_EXPR_STMT (expr),