aboutsummaryrefslogtreecommitdiff
path: root/gcc/ada/gcc-interface/utils.c
diff options
context:
space:
mode:
authorEric Botcazou <ebotcazou@adacore.com>2015-02-08 09:12:43 +0000
committerEric Botcazou <ebotcazou@gcc.gnu.org>2015-02-08 09:12:43 +0000
commite2d13a4ad1876a15a4d77915d2138b0122afe411 (patch)
tree3fe9d9e257838ae13fde6d84e73781fd901353eb /gcc/ada/gcc-interface/utils.c
parent5f5bfe7f629edc35f345ac0e5c62892a9265ada8 (diff)
downloadgcc-e2d13a4ad1876a15a4d77915d2138b0122afe411.zip
gcc-e2d13a4ad1876a15a4d77915d2138b0122afe411.tar.gz
gcc-e2d13a4ad1876a15a4d77915d2138b0122afe411.tar.bz2
utils.c (begin_subprog_body): Assert that the body is present in the same context as the declaration.
* gcc-interface/utils.c (begin_subprog_body): Assert that the body is present in the same context as the declaration. From-SVN: r220510
Diffstat (limited to 'gcc/ada/gcc-interface/utils.c')
-rw-r--r--gcc/ada/gcc-interface/utils.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/gcc/ada/gcc-interface/utils.c b/gcc/ada/gcc-interface/utils.c
index 369f65c..44dad7b 100644
--- a/gcc/ada/gcc-interface/utils.c
+++ b/gcc/ada/gcc-interface/utils.c
@@ -3105,6 +3105,11 @@ begin_subprog_body (tree subprog_decl)
/* This function is being defined. */
TREE_STATIC (subprog_decl) = 1;
+ /* The failure of this assertion will likely come from a wrong context for
+ the subprogram body, e.g. another procedure for a procedure declared at
+ library level. */
+ gcc_assert (current_function_decl == decl_function_context (subprog_decl));
+
current_function_decl = subprog_decl;
/* Enter a new binding level and show that all the parameters belong to