diff options
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ada/ChangeLog | 8 | ||||
-rw-r--r-- | gcc/ada/adaint.c | 2 | ||||
-rw-r--r-- | gcc/ada/exp_attr.adb | 5 |
3 files changed, 13 insertions, 2 deletions
diff --git a/gcc/ada/ChangeLog b/gcc/ada/ChangeLog index 1b4e752bcb2..2715b54782c 100644 --- a/gcc/ada/ChangeLog +++ b/gcc/ada/ChangeLog @@ -1,3 +1,11 @@ +2010-08-10 Thomas Quinot <quinot@adacore.com> + + * exp_attr.adb: Add comments. + +2010-08-10 Jerome Lambourg <lambourg@adacore.com> + + * adaint.c (__gnat_get_file_names_case_sensitive): return 0 on darwin. + 2010-08-09 Nathan Froyd <froydnj@codesourcery.com> * gcc-interface/utils.c (gnat_poplevel): Use blocks_nreverse. diff --git a/gcc/ada/adaint.c b/gcc/ada/adaint.c index 9b814e945d0..cc1dd99ead6 100644 --- a/gcc/ada/adaint.c +++ b/gcc/ada/adaint.c @@ -579,7 +579,7 @@ __gnat_get_maximum_file_name_length (void) int __gnat_get_file_names_case_sensitive (void) { -#if defined (VMS) || defined (WINNT) +#if defined (VMS) || defined (WINNT) || defined (__APPLE__) return 0; #else return 1; diff --git a/gcc/ada/exp_attr.adb b/gcc/ada/exp_attr.adb index 5126e5a1730..7bb6285f5e2 100644 --- a/gcc/ada/exp_attr.adb +++ b/gcc/ada/exp_attr.adb @@ -96,7 +96,6 @@ package body Exp_Attr is (N : Node_Id; Pref : Node_Id; Typ : Entity_Id); - -- An attribute reference to a protected subprogram is transformed into -- a pair of pointers: one to the object, and one to the operations. -- This expansion is performed for 'Access and for 'Unrestricted_Access. @@ -370,7 +369,11 @@ package body Exp_Attr is Make_Aggregate (Loc, Expressions => New_List (Obj_Ref, Sub_Ref)); + -- Sub_Ref has been marked as analyzed, but we still need to make sure + -- Sub is correctly frozen. + Freeze_Before (N, Entity (Sub)); + Rewrite (N, Agg); Analyze_And_Resolve (N, E_T); |