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=-1.9 required=5.0 tests=BAYES_00,FREEMAIL_FROM autolearn=ham autolearn_force=no version=3.4.4 X-Google-Thread: 103376,b93cfe55e492e2fa,start X-Google-Attributes: gid103376,public,usenet X-Google-Language: FRENCH,ASCII Path: g2news1.google.com!postnews.google.com!k39g2000hsf.googlegroups.com!not-for-mail From: djalil85@hotmail.fr Newsgroups: comp.lang.ada Subject: erreur de compilation !! Date: Fri, 25 Jan 2008 07:51:37 -0800 (PST) Organization: http://groups.google.com Message-ID: NNTP-Posting-Host: 132.227.76.156 Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable X-Trace: posting.google.com 1201276303 22586 127.0.0.1 (25 Jan 2008 15:51:43 GMT) X-Complaints-To: groups-abuse@google.com NNTP-Posting-Date: Fri, 25 Jan 2008 15:51:43 +0000 (UTC) Complaints-To: groups-abuse@google.com Injection-Info: k39g2000hsf.googlegroups.com; posting-host=132.227.76.156; posting-account=jmKmbgoAAABMz9llJvqoUsNOEpQOZvhE User-Agent: G2/1.0 X-HTTP-UserAgent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.8.1.3) Gecko/20070208 Mandriva/2.0.0.3-2mdv2007.1 (2007.1) Firefox/2.0.0.3,gzip(gfe),gzip(gfe) Xref: g2news1.google.com comp.lang.ada:19597 Date: 2008-01-25T07:51:37-08:00 List-Id: J'ai un probl=E8me de compilation et j'aurais besoin d'aide SVP: j'ai cod=E9 un exemple simplifi=E9 pour pr=E9senter le PB: il s'agit d'un package qui utilise un autre g=E9n=E9rique, qui =E0 lui m=EAm= e utilse un autre package g=E9n=E9rique, et ce dernier impl=E9mente une fonction ("superieure") dont a besoin le premier package. 1)****************************************************************CODE entier_paquetage.ads------------------------------------------------------- with Operations_Paquetage; package Entier_Paquetage is type Entier is new integer; --instanciation de : operations package operations_Instance is new Operations_paquetage( Entier ); use Operations_Instance; end Entier_Paquetage; entier_paquetage.adb------------------------------------------------------- with Ada.Text_Io; package body Entier_Paquetage is B: Boolean; X: Entier; Y: Entier; Z: Entier; begin Init_Entier(X, 2); Init_Entier(Y, 3); Z:=3DAddition(X, Y); B:=3D Superieure(X,Y); end Entier_Paquetage; operations_paquetage.ads____________________________________________________= ___ with Comparaison_Paquetage; generic type Objet is private; package Operations_Paquetage is procedure Init_Entier(X: Objet; Val: Integer); function Addition(X: Objet; Y: Objet) return Objet; package Comparaison_Instance is new Comparaison_Paquetage( Objet ); use Comparaison_Instance; end Operations_Paquetage; operations_paquetage.adb____________________________________________________= ___ package body Operations_Paquetage is procedure Init_Entier(X: Objet; Val: Integer) is begin X:=3DVal; end; function Addition(X: Objet; Y: Objet) return Objet is begin return X+Y; end; end Operations_Paquetage; comparaison_paquetage.ads%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%% generic type Objet is private; package Comparaison_Paquetage is function Superieure(X: Objet; Y: Objet) return Boolean; end Comparaison_Paquetage; comparaison_paquetage.adb%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%% package body Comparaison_Paquetage is function Superieure(X: Objet; Y: Objet) return Boolean is begin return X>Y; end ; end Comparaison_Paquetage; 2)*****************************************************************ERREUR COMPIL: gcc -c entier_paquetage.adb entier_paquetage.adb:4:01: spec of this package does not allow a body entier_paquetage.adb:20:08: "Superieure" is not visible entier_paquetage.adb:20:08: non-visible declaration at comparaison_paquetage.ads:7 3)******************************************************************QUESTION= : la fonction superieure n'est pas reconnue pour y rem=E9dier, faut t-il absolument instancier comparaison_paquetage au NIVEAU de entier_paquetage ?????? merci d'avance.