aboutsummaryrefslogtreecommitdiff
path: root/gcc/ada/lib-xref.ads
diff options
context:
space:
mode:
authorArnaud Charlet <charlet@gcc.gnu.org>2011-08-29 16:40:11 +0200
committerArnaud Charlet <charlet@gcc.gnu.org>2011-08-29 16:40:11 +0200
commit226a7fa431fc3f9fd533abf6078a1aa9adb9a718 (patch)
treee32b257f259965d95e0d8e66ce84cc867c98918a /gcc/ada/lib-xref.ads
parentdfbcb149aa59ef88a254489d2c3aa9c105562490 (diff)
downloadgcc-226a7fa431fc3f9fd533abf6078a1aa9adb9a718.zip
gcc-226a7fa431fc3f9fd533abf6078a1aa9adb9a718.tar.gz
gcc-226a7fa431fc3f9fd533abf6078a1aa9adb9a718.tar.bz2
[multiple changes]
2011-08-29 Robert Dewar <dewar@adacore.com> * sem_ch10.adb, a-coorse.adb, exp_dist.adb, exp_ch3.adb: Minor reformatting. * gcc-interface/Make-lang.in: Update dependencies. 2011-08-29 Yannick Moy <moy@adacore.com> * alfa.ads (Name_Of_Heap_Variable): New constant name. * lib-xref-alfa.adb, lib-xref.adb, lib-xref.ads (Drefs): New global table to hold dereferences. (Add_ALFA_Xrefs): Take into account dereferences as special reads/writes to the variable "HEAP". (Enclosing_Subprogram_Or_Package): Move subprogram here. (Generate_Dereference): New procedure to store a read/write dereferencew in the table Drefs. * put_alfa.adb (Put_ALFA): Use different default than (0,0) used for the special "HEAP" var. * sem_ch4.adb (Analyze_Explicit_Dereference): Store read dereference in ALFA mode. * sem_util.adb (Note_Possible_Modification): Store write dereference in ALFA mode. From-SVN: r178252
Diffstat (limited to 'gcc/ada/lib-xref.ads')
-rw-r--r--gcc/ada/lib-xref.ads9
1 files changed, 9 insertions, 0 deletions
diff --git a/gcc/ada/lib-xref.ads b/gcc/ada/lib-xref.ads
index a0e33d7..e8a4f39 100644
--- a/gcc/ada/lib-xref.ads
+++ b/gcc/ada/lib-xref.ads
@@ -590,6 +590,15 @@ package Lib.Xref is
package ALFA is
+ function Enclosing_Subprogram_Or_Package (N : Node_Id) return Entity_Id;
+ -- Return the closest enclosing subprogram of package
+
+ procedure Generate_Dereference
+ (N : Node_Id;
+ Typ : Character := 'r');
+ -- This procedure is called to record a dereference. N is the location
+ -- of the dereference.
+
type Node_Processing is access procedure (N : Node_Id);
procedure Traverse_Compilation_Unit