aboutsummaryrefslogtreecommitdiff
path: root/gcc/ada/debug_a.adb
diff options
context:
space:
mode:
authorArnaud Charlet <charlet@gcc.gnu.org>2011-08-30 15:41:24 +0200
committerArnaud Charlet <charlet@gcc.gnu.org>2011-08-30 15:41:24 +0200
commitc01817d2e03b80c93d4be08927d4573777c5e129 (patch)
tree1880ea83ac066801135cc69321359f40a3523cb9 /gcc/ada/debug_a.adb
parent996c8821a235a2313d3574d0815044847f7b5c14 (diff)
downloadgcc-c01817d2e03b80c93d4be08927d4573777c5e129.zip
gcc-c01817d2e03b80c93d4be08927d4573777c5e129.tar.gz
gcc-c01817d2e03b80c93d4be08927d4573777c5e129.tar.bz2
[multiple changes]
2011-08-30 Javier Miranda <miranda@adacore.com> * sem_ch3.adb (Add_Internal_Interface_Entities): If serious errors have been reported and a subprogram covering an interface primitive is not found then skip generating the internal entity. Done to avoid crashing the frontend. (Check_Abstract_Overriding): Change text of error of wrong formal of protected subprogram or entry. Done for consistency to emit exactly the same error reported by Check_Synchronized_Overriding. In addition, the error is restricted to protected types (bug found working on AI05-0090) 2011-08-30 Yannick Moy <moy@adacore.com> * exp_aggr.adb, exp_ch11.adb, exp_prag.adb: Remove early exit during expansion in Alfa mode. * exp_ch6.adb, exp_ch6.ads (Expand_Actuals): Make subprogram public. * exp_light.adb, exp_light.ads: New package defining light expansion. * expander.adb (Expand): Call light expansion in Alfa mode * exp_ch6_light.adb, exp_ch6_light.ads: Light expansion of chapter 6 constructs. * exp_ch7_light.adb, exp_ch7_light.ads: Light expansion of chapter 7 constructs. * exp_attr_light.adb, exp_attr_light.ads: Light expansion of attributes * gnat1drv.adb (Adjust_Global_Switches): Comment 2011-08-30 Yannick Moy <moy@adacore.com> * lib-xref-alfa.adb: Minor refactoring. 2011-08-30 Yannick Moy <moy@adacore.com> * exp_ch9.adb (Expand_Entry_Barrier): Do not perform expansion in Alfa mode. * sem_ch6.adb (Analyze_Subprogram_Body_Helper): Do not perform expansion in Alfa mode. * sem_ch9.adb (Analyze_Entry_Body): Do not perform expansion in Alfa mode. 2011-08-30 Robert Dewar <dewar@adacore.com> * debug_a.adb: Update comment. From-SVN: r178304
Diffstat (limited to 'gcc/ada/debug_a.adb')
-rw-r--r--gcc/ada/debug_a.adb6
1 files changed, 5 insertions, 1 deletions
diff --git a/gcc/ada/debug_a.adb b/gcc/ada/debug_a.adb
index 35b7f00..43455b91 100644
--- a/gcc/ada/debug_a.adb
+++ b/gcc/ada/debug_a.adb
@@ -6,7 +6,7 @@
-- --
-- B o d y --
-- --
--- Copyright (C) 1992-2007, Free Software Foundation, Inc. --
+-- Copyright (C) 1992-2011, Free Software Foundation, Inc. --
-- --
-- GNAT is free software; you can redistribute it and/or modify it under --
-- terms of the GNU General Public License as published by the Free Soft- --
@@ -75,6 +75,8 @@ package body Debug_A is
-- Now push the new element
+ -- Why is this done unconditionally???
+
Debug_A_Depth := Debug_A_Depth + 1;
if Debug_A_Depth <= Max_Node_Ids then
@@ -101,6 +103,8 @@ package body Debug_A is
-- We look down the stack to find something with a decent Sloc. (If
-- we find nothing, just leave it unchanged which is not so terrible)
+ -- This seems nasty overhead for the normal case ???
+
for J in reverse 1 .. Integer'Min (Max_Node_Ids, Debug_A_Depth) loop
if Sloc (Node_Ids (J)) > No_Location then
Current_Error_Node := Node_Ids (J);