C    CES QUELQUES CARTES SONT A INCORPORER DANS TOUS SERVEURS DU NOYAU
C    DE GESTION DE LA PILE DES DONNEES.
C     IPTEM   POINTEUR SUR LE DERNIER OBJET TEMPORAIRE CREE
C     IBPILE  BAS DE LA PILE
C     IHPILE  HAUT DE LA PILE
C     IMOTLU  POSITION DU MOT(3) DU DERNIER MOT LU
C     ITTINT  RESULTAT DE LA PRECOMPILATION
C     IPVINT  NOMBRE DE VALEUR ISSUE DE LA PRECOMPILATION
C     IINTPO  POSITION DE LECTURE DANS LA PRECOMPILATION
C     INTEMP  ON A CREE UN NOM TEMPORAIRE
C     NBNOM   NOMBRE DE NOMS A AFFECTER
C     INILU   A DECLARER EN BLOCK DATA  A 0 (INITIALISATION EFFECTUEE)
C     NOMLU   LECTURE DES NOMS EFFECTUEE
C     MBLOC   BLOC COURAMMENT ACTIF
C     MPROCE  PROCEDURE COURAMMENT ACTIVE
C     ISTOP FIN D'INSTRUCTION ELEMENTAIRE
C     IRAZ ON A RENCONTRE LE POINT VIRGULE
C     INTEXT=1 BLOQUE L'INTERPRETATION D'UN TEXTE
C     LECTAB=1 BLOQUE LA RECHERCHE DANS UNE TABLE
C     IDEBPR=1 ON VIENT DE LIRE DEBP ET ON BLOQUE LE DECODAGE PAR IRE=4
C     IBLQM =1 LES MOTS SONT BLOQUANTS POUR LA LECTURE. AVEC 0 ils ne le sont pas
C
C  04/04/14: Modif GF: Declaration explicite des variables
C
      COMMON/CNOYAU/
     #ITABOB,JPOOB,IPTRA,IPILOC,IPOBJ,
     #ITABNO,ITTINT,
     #ISTOP,IBPILE,IHPILE,IMOTLU,IPTEM,NBNOM,INILU,NOMLU,IEGAL,INTEXT,
     #MBLOC,IPVINT,IINTPO,INTEMP,IRAZ,MPROCE,LECTAB,LMNOBJ,LMNENT,
     #LMNREE,LMNCHA,LMNLOG,LMNNOM,ITABOC,ITABOD,NOYSEG,IDEBPR,JARGMT,
     #MESSER,IPIPRO,MESERR,MEFFAC,IBLQM
      integer
     #ISTOP,IBPILE,IHPILE,IMOTLU,IPTEM,NBNOM,INILU,NOMLU,IEGAL,INTEXT,
     #IPVINT,IINTPO,INTEMP,IRAZ,LECTAB,LMNOBJ,LMNENT,
     #LMNREE,LMNCHA,LMNLOG,LMNNOM,NOYSEG,IDEBPR,JARGMT,
     #MESERR,IBLQM
      save /cnoyau/
C
      PARAMETER (LONOM=24)
C       LONOM : Longueur des noms des objets GIBIANE
C
      SEGMENT JPOOB
C                            1  VALEUR DEJA LU OU NON
C                            2  RANG DANS TABLE DES NOMS SI EXISTE
C                            4  RANG DANS LA PILE
             LOGICAL JPOOB1(N)
             INTEGER JPOOB2(N)
             INTEGER JPOOB4(N)
C                                 TYPE DANS PILE INTERNE
             CHARACTER*(8) JTYOBJ(N)
      ENDSEGMENT
C  LES 3 SEGMENTS SUIVANTS MARCHENT  ENSEMBLE,ILS REPERENT LES
C  OBJETS EN MEMOIRE
      SEGMENT ITABOB
C                           1 TABLEAUX DES NOMS D'OBJETS
             INTEGER INOOB1(N)
      ENDSEGMENT
      SEGMENT ITABOC
C                           2 TYPES DES OBJETS
             CHARACTER*(8) INOOB2(N)
      ENDSEGMENT
      SEGMENT ITABOD
C                           2 NUMERO DANS LA PILE
             INTEGER IOUEP2(N)
      ENDSEGMENT

      SEGMENT IPTRA
C                               PILE DE TRAVAIL POUR TASREE
             INTEGER IIFLOT(LM)
      ENDSEGMENT
       SEGMENT IPILOC
*      SEGMENT IPFLO
C                               PILE DES FLOTTANTS
             REAL*8 XIFLOT(LMXX)
*      ENDSEGMENT
**      SEGMENT IPCHA
C                               PILE DES CHAINES
             CHARACTER*(LMMM)  ICHARA
*      ENDSEGMENT
*      SEGMENT IPCHA1
C                               POSITION DE FIN DANS LA PILE CHAINES
             INTEGER IPCHAR(LMCC)
             INTEGER IPHCOD(LMCC)
*      ENDSEGMENT
*      SEGMENT IPLOG
C                               PILE DES LOGIQUES
             LOGICAL IPLOGI(LMLL)
      ENDSEGMENT
      SEGMENT IPIPRO
C                               PILE DES OBJETS PROCEDUR
             INTEGER IPIPR1(LM),IPIPRL
      ENDSEGMENT
      SEGMENT IPOBJ
C                               PILE DES OBJETS TYPES
              INTEGER IPOBJT(LM)
      ENDSEGMENT
      SEGMENT ITABNO
C                               TYPES DES NOMS A ATTRIBUER
             CHARACTER*(8) ITANOM(M)
C                               RANG DANS TABLE DES NOMS
             INTEGER ITANO1(M)
      ENDSEGMENT
      SEGMENT ITTINT
C                               RESULTAT DE LA PRECOMPILATION
C                               NUMERO DE L'OBJET DANS LA TABLE
C                               =0 FIN D'INSTRUCTIONS ELEMENTAIRE
C                               =-1 FIN DE PHRASE
             INTEGER ITINTE(0)
      ENDSEGMENT
      SEGMENT MESSER
        INTEGER IPMESS(NMESS,NLANG),NIVERR(NMESS),NUMERR(NMESS)
        CHARACTER*4 LANGUA(NLANG)
      ENDSEGMENT
      SEGMENT MCHERR
        CHARACTER*(LCHER1) CHERR1
        CHARACTER*(LCHER2) CHERR2
      ENDSEGMENT
      SEGMENT MEFFAC
*       pile des objets fantome : neffec est le nombre effectif d'objet fantome
*       tyeffa est le type,  neffac est le numero du segment
        character*8 TYEFFA (NEFF)
        INTEGER     NEFFAC (NEFF),neffec
      ENDSEGMENT
