summaryrefslogtreecommitdiff
path: root/gcc/ada/sem_ch3.ads
diff options
context:
space:
mode:
authorArnaud Charlet <charlet@gcc.gnu.org>2012-12-05 11:59:09 +0100
committerArnaud Charlet <charlet@gcc.gnu.org>2012-12-05 11:59:09 +0100
commita53c56136d37b424f4f6b89e903763b82c33cfb9 (patch)
tree4c0fa6b38c44a576559169d8ac21ad008797f8bd /gcc/ada/sem_ch3.ads
parent5e29ae8259c54bdc25e82b3e71c956cde0a49a99 (diff)
downloadgcc-a53c56136d37b424f4f6b89e903763b82c33cfb9.tar.gz
[multiple changes]
2012-12-05 Ed Schonberg <schonberg@adacore.com> * exp_ch5.adb (Expand_N_Assignment_Statement): Handle properly the generation of discriminant checks when the left-hand side has a type with hidden discriminants. * sem_ch3.ads (Is_Visible_Component): Add defaulted parameter to specify the node on which component visibility is being checked. * sem_ch3.adb (Is_Visible_Component): Use new parameter to determine whether the reference comes from a type conversion to a full view of a private type with unknown discriminants. * sem_ch4.adb (Analyze_Selected_Component): Call Is_Visible_Component with added parameter. 2012-12-05 Arnaud Charlet <charlet@adacore.com> * make.adb: Minor comment update. 2012-12-05 Arnaud Charlet <charlet@adacore.com> * gnatlink.adb: Also use -x adascil in CodePeer mode when calling gcc. * exp_ch5.adb: Minor reformatting. 2012-12-05 Bob Duff <duff@adacore.com> * exp_ch4.adb: Minor comment. 2012-12-05 Bob Duff <duff@adacore.com> * par-ch4.adb: Set Paren_Count correctly for a parenthesized expression containing a conditional expression or quantified expression. * sprint.adb: Update comment. 2012-12-05 Bob Duff <duff@adacore.com> * style.adb, scans.ads, styleg.adb: Update comments. 2012-12-05 Ed Schonberg <schonberg@adacore.com> * sem_ch8.adb (Find_Selected_Component): Handle properly an expanded name whose prefix is the expanded name of an enclosing entry, that is to say a construct such as T.E.X, where T is an enclosing concurrent type and E is an enclosing entry. From-SVN: r194204
Diffstat (limited to 'gcc/ada/sem_ch3.ads')
-rw-r--r--gcc/ada/sem_ch3.ads8
1 files changed, 7 insertions, 1 deletions
diff --git a/gcc/ada/sem_ch3.ads b/gcc/ada/sem_ch3.ads
index 482450176a9..98a8dbc8ce3 100644
--- a/gcc/ada/sem_ch3.ads
+++ b/gcc/ada/sem_ch3.ads
@@ -185,12 +185,18 @@ package Sem_Ch3 is
-- is a null extension, meaning that it has an extension part without any
-- components and does not have a known discriminant part.
- function Is_Visible_Component (C : Entity_Id) return Boolean;
+ function Is_Visible_Component
+ (C : Entity_Id;
+ N : Node_Id := Empty) return Boolean;
-- Determines if a record component C is visible in the present context.
-- Note that even though component C could appear in the entity chain
-- of a record type, C may not be visible in the current context. For
-- instance, C may be a component inherited in the full view of a private
-- extension which is not visible in the current context.
+ --
+ -- If present, N is the selected component of which C is the selector. If
+ -- the prefix of N is a type conversion inserted for a discriminant check,
+ -- C is automatically visible.
procedure Make_Index
(I : Node_Id;