From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: X-Spam-Status: No, score=-0.5 required=5.0 tests=BAYES_00,INVALID_MSGID, PP_MIME_FAKE_ASCII_TEXT autolearn=no autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII X-Google-Thread: 103376,fa2ee17d1c33f7d5 X-Google-Attributes: gid103376,public From: Stephen Leake Subject: Re: How could I name it ? Date: 1998/11/09 Message-ID: #1/1 X-Deja-AN: 410013872 References: <3645C3C4.2A05@club-internet.fr> Organization: NASA Goddard Space Flight Center -- Greenbelt, Maryland USA Newsgroups: comp.lang.ada Date: 1998-11-09T00:00:00+00:00 List-Id: Fran�oise & Herv� BITTEUR writes: > Please, how could I name the item 'Ptr', belonging to task body 'T' in > the following entry point. I cannot name it simply 'Ptr' since the entry > point already has a 'Ptr' as parameter. > > The various constructions, all flagged hereunder with comment "Not OK", > lead to the GNAT compilation message : > invalid prefix in selected component "T" > > How come ? > Besides, this is a simplified old piece of code (Ada 83) that used to > compile correctly on VaxAda. > Compiling with ObjectAda 7.1.2 gives no errors for the code below. So you've got a GNAT bug (which I also reproduced). > Thanks for any clue. > --Herv� BITTEUR > > ---- cut here ------------------------------------------------------- > procedure Test is > type T; > type T_Ptr is access T; > task type T is > entry Point (Ptr : in T_Ptr); > end T; > task body T is > Ptr : T_Ptr; > My_Ptr : T_Ptr; > begin > accept Point > (Ptr : in T_Ptr) > do > --Ptr := Ptr; -- not OK, of course > My_Ptr := Ptr; -- OK, but I don't like it ! > > T.Ptr := Ptr; -- not OK > T.My_Ptr := Ptr; -- not OK > > Test.T.Ptr := Ptr; -- not OK > Test.T.My_Ptr := Ptr; -- not OK > end Point; > end T; > begin > null; > end Test; > -- gnatmake -g test.adb > -- gcc -c -g test.adb > -- test.adb:17:10: invalid prefix in selected component "T" > -- test.adb:18:10: invalid prefix in selected component "T" > -- test.adb:20:14: invalid prefix in selected component "T" > -- test.adb:21:14: invalid prefix in selected component "T" > -- gnatmake: "test.adb" compilation error > ----- end of example --------------------------------------------------