daily update
[deliverable/binutils-gdb.git] / gdb / block.c
index 1889ecd95e89c34452e218731ca4460c41f5b5b9..776ae53f5aa51a80449b02ecdb2bbc91bbb09a64 100644 (file)
@@ -1,6 +1,7 @@
 /* Block-related functions for the GNU debugger, GDB.
 
-   Copyright (C) 2003, 2007, 2008, 2009 Free Software Foundation, Inc.
+   Copyright (C) 2003, 2007, 2008, 2009, 2010, 2011
+   Free Software Foundation, Inc.
 
    This file is part of GDB.
 
@@ -40,7 +41,7 @@ static void block_initialize_namespace (struct block *block,
 
 /* Return Nonzero if block a is lexically nested within block b,
    or if a and b have the same pc range.
-   Return zero otherwise. */
+   Return zero otherwise.  */
 
 int
 contained_in (const struct block *a, const struct block *b)
@@ -52,6 +53,10 @@ contained_in (const struct block *a, const struct block *b)
     {
       if (a == b)
        return 1;
+      /* If A is a function block, then A cannot be contained in B,
+         except if A was inlined.  */
+      if (BLOCK_FUNCTION (a) != NULL && !block_inlined_p (a))
+        return 0;
       a = BLOCK_SUPERBLOCK (a);
     }
   while (a != NULL);
This page took 0.024107 seconds and 4 git commands to generate.