OSDN Git Service

2005-03-29 Ed Schonberg <schonberg@adacore.com>
authorcharlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 29 Mar 2005 16:20:30 +0000 (16:20 +0000)
committercharlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 29 Mar 2005 16:20:30 +0000 (16:20 +0000)
commit147cc8375e81008b115ba12207d260c1983f05a3
tree395b2798e3377b361bd8d161e38756dabc97f3d1
parentb053285e48b51c83eda82db7c1b8d76a036d4807
2005-03-29  Ed Schonberg  <schonberg@adacore.com>

* sem_ch4.adb (Analyze_Selected_Component): Do not generate an actual
subtype if code is being pre-analyzed, to prevent un-expanded
references to protected formals, among others.
(Analyze_Explicit_Dereference): If the overloaded prefix includes some
interpretation that can be a call, include the result of the call as a
possible interpretation of the dereference.

* sem_ch5.adb (Process_Bounds): Determine type of range by
pre-analyzing a copy of the original range, and then analyze the range
with the expected type.

* sem_res.adb (Check_Parameterless_Call): For an explicit dereference
with an overloaded prefix where not all interpretations yield an
access to subprogram, do not rewrite node as a call.
(Resolve_Explicit_Dereference): Recognize the previous case and rewrite
the node as a call once the context identifies the interpretation of
the prefix whose call yields the context type.
(Valid_Conversion): For the case of a conversion between
local access-to-subprogram types, check subtype conformance using
Check_Subtype_Conformant instead of Subtype_Conformant, to have a more
detailed error message.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@97184 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/ada/sem_ch4.adb
gcc/ada/sem_ch5.adb