[Ada] pas d'access et erreur d'access.

pas d'access et erreur d'access. [Ada] - Ada - Programmation

Marsh Posté le 27-11-2014 à 01:36:18    

Bonjour, je n'ai pas déclaré d'access et j'ai une erreur d'access.
 
Le langage : Ada
OS            : 3.2.0-4-686-pae #1 SMP Debian 3.2.60-1+deb7u3 i686 GNU/Linux
Compilateur : GNAT 4.6 Copyright 1996-2010, Free Software Foundation, Inc.
 
Code :  
 

cat src/lib/*.ad?


 

Code :
  1. package Ex_Machina is
  2.   pragma Pure (Ex_Machina);
  3.  
  4.  
  5.   type Version_Flags is (Major, Minor, Rev, Release);
  6.   -- the flags of version.
  7.  
  8.   type Major_Type is (Alpha, Terra, Omega);
  9.   -- alpha : initialization ;
  10.   -- Terra : adjustement ;
  11.   -- omega : finalization.
  12.  
  13.  
  14.   type Minor_Type is (Debug, Release, Test);
  15.   -- Debug   : development ;
  16.   -- Release : publication ;
  17.   -- Test    : testing.
  18.  
  19.   type Revision_Type is (Manual, Machine);        
  20.   -- Manual  : human development ;
  21.   -- Machine : A.I. development.
  22.  
  23.   Line_First : constant Positive := 1;
  24.   Line_Last : constant Positive := 256;
  25.  
  26.   subtype Line_Length_Max_Type is Positive range Line_first..Line_Last;
  27.  
  28.   type Name_Type is array (Line_Length_Max_Type range <> ) of Wide_Character;
  29.  
  30.   type Release_Type is
  31.      record
  32.         Author    : Name_Type(Line_First..14) := "Ada           ";
  33.         Lang      : Name_Type(Line_First..14) := "fr            ";
  34.         Copyright : Name_Type(Line_First..28) := "Copyleft (L) The matrix 2014";
  35.         Date      : Name_Type(Line_First..25) := "mercredi 26 novembre 2014";
  36.         License   : Name_Type(Line_First..26) := "Gnu General Public License";
  37.         Program   : Name_Type(Line_First..14) := "Chaos Ex Digit";
  38.      end record;        
  39.  
  40.  
  41.   type Version_Type(Major    : Major_Type := Alpha;
  42.                     Minor    : Minor_Type := Debug;
  43.                     Revision : Revision_Type := Manual) is
  44.      record
  45.         Release : Release_Type;
  46.      end record;
  47.  
  48.   Initial_Version : constant Version_Type :=
  49.     (
  50.      Alpha, Debug, Manual,
  51.      (
  52.       Author    => "Ada           ",
  53.       Lang      => "fr            ",
  54.       Copyright => "Copyleft (L) The matrix 2014",
  55.       Date      => "mercredi 26 novembre 2014",
  56.       License   => "Gnu General Public License",
  57.       Program   => "Chaos Ex Digit"
  58.      )
  59.     );  
  60.  
  61. end Ex_Machina;


 
 

Code :
  1. package body Ex_Machina.Zeux is
  2.  
  3.  
  4. end Ex_Machina.Zeux;


Code :
  1. generic
  2.   Version : Version_Type := Initial_Version;
  3. package Ex_Machina.Zeux is
  4.   pragma Shared_Passive ( Ex_Machina.Zeux);
  5.  
  6.   procedure Mise_Au_Jour (Version : in Version_Type);      
  7. private
  8.  
  9.  
  10.   Dernier_Jour : Version_Type := Version;
  11.  
  12.  
  13. end Ex_Machina.Zeux;


cat src/*.adb


Code :
  1. with Ex_Machina.Zeux;
  2. procedure Ex_Digit is  
  3.   package Machine is new Ex_Machina.Zeux(Ex_Machina.Initial_Version);
  4.  
  5.   procedure Chaos is separate;
  6.      
  7. begin
  8.  
  9.   loop
  10.  
  11.      null;
  12.   end loop;
  13.  
  14. end Ex_Digit;


Code :
  1. with Ex_Machina;
  2. separate (Ex_Digit)
  3. procedure Chaos is
  4.  
  5. begin
  6.  
  7.   null;  
  8. end Chaos;


 
la ligne de compilation :

gnatmake src/ex_digit.adb -aIsrc/ -aIsrc/lib/


 
 
L'erreur inattendue :

Citation :

gcc-4.6 -c -Isrc/ -Isrc/ -Isrc/lib/ -I- src/ex_digit.adb
ex_machina-zeux.ads:10:04: types containing access components not supported in Shared_Passive partitions
gnatmake: "src/ex_digit.adb" compilation error


 
 
Je sais pour le reste de la démarche.  :whistle:  
 
 
Si vous pouviez m'aider pour cet erreur d'access ou me dire ce qu'en réalité je n'ai pas le droit de faire ; Merci !


---------------
Toute expression prend un sens spirituel qui nous influence dans notre quête de l'Homme.
Reply

Marsh Posté le 27-11-2014 à 01:36:18   

Reply

Marsh Posté le 27-11-2014 à 01:50:33    

Faudra j'apprenne à débugging un programme avant de post. Parce que si non là je crois que ça va couper.
 
L'erreur c'est pas de paramètres au type article dans un pure unit je pense.


---------------
Toute expression prend un sens spirituel qui nous influence dans notre quête de l'Homme.
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed