[updated 5.Jun.2000]

Librairie redlib > Fichier rederr.f

Qui appelle rederr ?

line
      SUBROUTINE REDERR (IRCODE,MOT)
line
  Auteur : D.Martin (Mai 1982)
  Derniere modification : D.Martin (16 Decembre 1998)
   
  Impression de message d'erreurs de lecture des mots-cle  
   
 -- Arguments d'entree -- 
  IRCODE numero de l'erreur
   0       < fin du fichier de lecture sur -IER a la lecture de 'MOT'
   1       = il manque la directive 'MOT'
   2       = la directive 'MOT' n'est pas possible a cet endroit
   3       = la directive 'MOT' ne peut pas etre repetee
   4       = la directive 'MOT' devait etre lue et non TEXTE
   5       = la donnee 'TEXTE' lue est trop (contient trop de caracteres)
   6       = la donnee 'TEXTE' lue contient des caracteres illicites
   11 a 14 = On a lu un article de type IRE alors que l'on voulait IRCODE-10
  MOT  mot lu, attendu ou manquant
line
      CHARACTER*(*)   MOT
      INTEGER         IRCODE
   
      CHARACTER*8     TEXT*4,TYPELU(5),CARTE
      CHARACTER       ERCODE*120,TEXTE*80,DCARTE*80
      DOUBLEPRECISION FLOT
      INTEGER         KTRVIN,IMPPAL,IMPSDR,IMPMES,NBMESG
     &               ,NFIX,IRE,NER,NCAR,ILU,IOP
      PARAMETER      (KTRVIN = 80)
      COMMON/FICHIM/  IMPPAL,IMPSDR,IMPMES,NBMESG
      COMMON/REDCO1/  FLOT,NFIX,IRE,NER,NCAR,ILU,IOP(5)
      COMMON/REDCOM/  TEXT(20)
      COMMON/REDCAR/  CARTE(KTRVIN)
      COMMON/FORMAH/  ERCODE
      EQUIVALENCE    (TEXTE,TEXT),(CARTE,DCARTE)
      DATA            TYPELU /'ENTIER','FLOTTANT','MOT','CHAINE','OS'/
line
      IF (IRCODE.GT.10) THEN
         CALL BAISE  ('On a lu un(e) '//TYPELU(IRE)
     &//' alors qu''on attendait un(e) '//TYPELU(IRCODE-10)
     &//' .               Le dernier mot lu est : '
     &//TEXTE(1:NCAR)//'.'
     &//' La derniere ligne de donnees lue est :'//DCARTE)
      ELSEIF (IRCODE.EQ.1) THEN
         ERCODE=MOT
         CALL BAISE  ('Il manque la directive '
     &//ERCODE(1:LEN(MOT))//'.'
     &//' La derniere ligne de donnees lue est :'//DCARTE)
      ELSEIF (IRCODE.EQ.2) THEN
         ERCODE=MOT
         CALL BAISE  ('La directive '//ERCODE(1:LEN(MOT))
     &//' n''etait pas attendue ici.'
     &//' La derniere ligne de donnees lue est :'//DCARTE)
      ELSEIF (IRCODE.EQ.3) THEN
         ERCODE=MOT
         CALL BAISE  ('La directive '//ERCODE(1:LEN(MOT))
     &//' ne doit etre donnee qu''une seule fois.'
     &//' La derniere ligne de donnees lue est :'//DCARTE)
      ELSEIF (IRCODE.EQ.4) THEN
         ERCODE=MOT
         CALL BAISE  ('On a lu '//TEXTE(1:NCAR)
     &//' alors qu''on attendait '//ERCODE(1:LEN(MOT))//'.'
     &//' La derniere ligne de donnees lue est :'//DCARTE)
      ELSEIF (IRCODE.EQ.5) THEN
         CALL BAISE  ('La chaine '//TEXTE(1:NCAR)
     &//' est trop longue (contient trop de caracteres).'
     &//' La derniere ligne de donnees lue est :'//DCARTE)
      ELSEIF (IRCODE.EQ.6) THEN
         CALL BAISE  ('La chaine '//TEXTE(1:NCAR)
     &//' contient des caracteres non autorises (r.t.f.m).'
     &//'La derniere ligne de donnees lue est :'//DCARTE)
      ELSE
         CALL ENCLER (-IRCODE,ERCODE(1:3))
         ERCODE(4:)=MOT
         CALL BAISE  ('Fin des donnees sur l''unite logique '
     &//ERCODE(1:3)//' dans la lecture de la variable : '
     &//ERCODE(4:3+LEN(MOT))//'.')
      ENDIF  
                                                                    END !RedErr
line
top

rederr est appelé dans (35 procédures)

initie.f (initial) lcaldy.f (initial) lcasse.f (lecdire)
lcautr.f (lecdire) lccado.f (lecdire) lccomm.f (lecgeom)
lcdesg.f (lecgeom) lcdesl.f (lecgeom) lcdire.f (lecdire)
lcdoma.f (lecgeom) lcdonn.f (lecdire) lceldo.f (lecgeom)
lcesse.f (lecdire) lcfado.f (lecgeom) lcfloc.f (lecdire)
lcform.f (lecgeom) lcgeom.f (lecgeom) lcgmai.f (lecgeom)
lcimpr.f (initial) lcinco.f (lecdire) lcinct.f (lecdire)
lcinte.f (lecdire) lcintg.f (lecdire) lcitrg.f (lecdire)
lckdom.f (lecdire) lckspe.f (lecdire) lcnomd.f (lecgeom)
lcpara.f (initial) lcquad.f (lecdire) lcstru.f (initial)
lcterm.f (lecdire) lctran.f (lecdire) mkterm.f (sdexplo)
redout.f (redlib) reduni.f (redlib)  

top