This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [Ada] Legality checks involving aspect Import


On Aug 1, 2014, at 3:16 AM, Arnaud Charlet <charlet@adacore.com> wrote:
> This patch adds some missing legality checks

No, GNU English doesn’t have us using legal/illegal unless the motivation is a law of some specific jurisdiction.

> q.ads:2:28: imported entities cannot have explicit initialization (RM 8.1 (24))
> q.ads:6:24: no initialization allowed for declaration of "J" at line 5
> q.ads:6:24: imported entities cannot be initialized (RM B.1(24))
> q.ads:9:24: no initialization allowed for declaration of "K" at line 8
> q.ads:9:24: imported entities cannot be initialized (RM B.1(24))

There are ok, but…

> 	* sem_ch13.adb (Analyze_Aspect_Specifications, case Aspect_Import):
> 	Set Is_Imported flag at once, to simplify subsequent legality

Not this.

> 	checks. Reject the aspect on an object whose declaration has an
> 	explicit initial value.
> 	* sem_prag.adb (Process_Import_Or_Interface): Use original node
> 	to check legality of an initial value for an imported entity.

Nor this.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]