Ignore:
Timestamp:
2019-12-10T11:29:11+01:00 (12 months ago)
Author:
acc
Message:

Branch 2019/dev_r11613_ENHANCE-04_namelists_as_internalfiles. Change new-lines to spaces in internal representation of namelist files to work-around CRAY compiler defect

File:
1 edited

Legend:

Unmodified
Added
Removed
  • NEMO/branches/2019/dev_r11613_ENHANCE-04_namelists_as_internalfiles/src/OCE/LBC/lib_mpp.F90

    r11670 r12131  
    12321232         &  OPEN(UNIT=knum,FILE='NUL', FORM=cdform, ACCESS=cdacce, STATUS=cdstat                      , ERR=100, IOSTAT=iost )    
    12331233      IF( iost == 0 ) THEN 
    1234          IF(ldwp) THEN 
     1234         IF(ldwp .AND. kout > 0) THEN 
    12351235            WRITE(kout,*) '     file   : ', TRIM(clfile),' open ok' 
    12361236            WRITE(kout,*) '     unit   = ', knum 
     
    13111311      CHARACTER(LEN=*), INTENT(IN )                :: cdnamfile 
    13121312      CHARACTER(LEN=256)                           :: chline 
     1313      CHARACTER(LEN=1)                             :: csp 
    13131314      INTEGER, INTENT(IN)                          :: kout 
    13141315      LOGICAL, INTENT(IN)                          :: ldwp  !: .true. only for the root broadcaster 
    13151316      INTEGER                                      :: itot, iun, iltc, inl, ios, itotsav 
     1317      ! 
     1318      !csp = NEW_LINE('A') 
     1319      ! a new line character is the best seperator but some systems (e.g.Cray) 
     1320      ! seem to terminate namelist reads from internal files early if they  
     1321      ! encounter new-lines. Use a single space for safety. 
     1322      csp = ' ' 
    13161323      ! 
    13171324      ! Check if the namelist buffer has already been allocated. Return if it has. 
     
    13621369          IF( inl.GT.0 .AND. LEN_TRIM( chline(1:inl) ).GT.0 ) THEN 
    13631370             cdnambuff(itot:itot+inl-1) = chline(1:inl) 
    1364              WRITE( cdnambuff(itot+inl:itot+inl), '(a)' ) NEW_LINE('A') 
     1371             WRITE( cdnambuff(itot+inl:itot+inl), '(a)' ) csp 
    13651372             itot = itot + inl + 1 
    13661373          ENDIF 
Note: See TracChangeset for help on using the changeset viewer.