Index: /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/ASM/asminc.F90
===================================================================
--- /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/ASM/asminc.F90	(revision 9382)
+++ /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/ASM/asminc.F90	(revision 9383)
@@ -146,9 +146,15 @@
          REWIND( numnam_ref )              ! Namelist nam_asminc in reference namelist : Assimilation increment
          READ  ( numnam_ref, nam_asminc, IOSTAT = ios, ERR = 901)
-901      IF( ios /= 0 ) CALL ctl_nam ( ios , 'nam_asminc in reference namelist', lwm )
+901      CONTINUE
+      ENDIF
+      call mpp_bcast(ios)
+      IF( ios /= 0 ) CALL ctl_nam ( ios , 'nam_asminc in reference namelist', lwp )
+      IF(lwm) THEN
          REWIND( numnam_cfg )              ! Namelist nam_asminc in configuration namelist : Assimilation increment
          READ  ( numnam_cfg, nam_asminc, IOSTAT = ios, ERR = 902 )
-902      IF( ios /= 0 ) CALL ctl_nam ( ios , 'nam_asminc in configuration namelist', lwm )
-      ENDIF
+902      CONTINUE
+      ENDIF
+      call mpp_bcast(ios)
+      IF( ios /= 0 ) CALL ctl_nam ( ios , 'nam_asminc in configuration namelist', lwp )
 
       IF(lwm) WRITE ( numond, nam_asminc )
Index: /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/BDY/bdydta.F90
===================================================================
--- /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/BDY/bdydta.F90	(revision 9382)
+++ /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/BDY/bdydta.F90	(revision 9383)
@@ -534,8 +534,14 @@
             IF(lwm) THEN
                READ  ( numnam_ref, nambdy_dta, IOSTAT = ios, ERR = 901)
-901            IF( ios /= 0 ) CALL ctl_nam ( ios , 'nambdy_dta in reference namelist', lwm )
+901            CONTINUE
+            ENDIF
+            call mpp_bcast(ios)
+            IF( ios /= 0 ) CALL ctl_nam ( ios , 'nambdy_dta in reference namelist', lwp )
+            IF(lwm) THEN
                READ  ( numnam_cfg, nambdy_dta, IOSTAT = ios, ERR = 902 )
-902            IF( ios /= 0 ) CALL ctl_nam ( ios , 'nambdy_dta in configuration namelist', lwm )
-            ENDIF
+902            CONTINUE
+            ENDIF
+            call mpp_bcast(ios)
+            IF( ios /= 0 ) CALL ctl_nam ( ios , 'nambdy_dta in configuration namelist', lwp )
 
             IF(lwm) WRITE ( numond, nambdy_dta )
Index: /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/BDY/bdyini.F90
===================================================================
--- /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/BDY/bdyini.F90	(revision 9382)
+++ /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/BDY/bdyini.F90	(revision 9383)
@@ -127,9 +127,15 @@
          REWIND( numnam_ref )              ! Namelist nambdy in reference namelist :Unstructured open boundaries  
          READ  ( numnam_ref, nambdy, IOSTAT = ios, ERR = 901)
-901      IF( ios /= 0 ) CALL ctl_nam ( ios , 'nambdy in reference namelist', lwm )
+901      CONTINUE
+      ENDIF
+      call mpp_bcast(ios)
+      IF( ios /= 0 ) CALL ctl_nam ( ios , 'nambdy in reference namelist', lwp )
+      IF(lwm) THEN
          REWIND( numnam_cfg )              ! Namelist nambdy in configuration namelist :Unstructured open boundaries
          READ  ( numnam_cfg, nambdy, IOSTAT = ios, ERR = 902 )
-902      IF( ios /= 0 ) CALL ctl_nam ( ios , 'nambdy in configuration namelist', lwm )
+902      CONTINUE
       ENDIF
+      call mpp_bcast(ios)
+      IF( ios /= 0 ) CALL ctl_nam ( ios , 'nambdy in configuration namelist', lwp )
 
       IF(lwm) WRITE ( numond, nambdy )
@@ -426,6 +432,9 @@
             IF(lwm) THEN
                READ  ( numnam_cfg, nambdy_index, IOSTAT = ios, ERR = 904 )
-904            IF( ios /= 0 ) CALL ctl_nam ( ios , 'nambdy_index in configuration namelist', lwm )
+904            CONTINUE
             ENDIF
+            call mpp_bcast(ios)
+            IF( ios /= 0 ) CALL ctl_nam ( ios , 'nambdy_index in configuration namelist', lwp )
+
             IF(lwm) WRITE ( numond, nambdy_index )
  
@@ -1782,5 +1791,5 @@
 #if defined key_mpp_mpi
       CALL mpp_bcast(nb_bdy)
-      CALL mpp_bcast(ln_coords_file)
+      CALL mpp_bcast(ln_coords_file, jp_bdy)
       CALL mpp_bcast(cn_coords_file, 80)
       CALL mpp_bcast(ln_mask_file)
@@ -1794,11 +1803,11 @@
       CALL mpp_bcast(ln_tra_dmp)
       CALL mpp_bcast(ln_dyn3d_dmp)
-      CALL mpp_bcast(rn_time_dmp)
-      CALL mpp_bcast(rn_time_dmp_out)
+      CALL mpp_bcast(rn_time_dmp, jp_bdy)
+      CALL mpp_bcast(rn_time_dmp_out, jp_bdy)
       CALL mpp_bcast(cn_ice_lim, 20)
       CALL mpp_bcast(nn_ice_lim_dta)
-      CALL mpp_bcast(rn_ice_tem)
-      CALL mpp_bcast(rn_ice_sal)
-      CALL mpp_bcast(rn_ice_age)
+      CALL mpp_bcast(rn_ice_tem, jp_bdy)
+      CALL mpp_bcast(rn_ice_sal, jp_bdy)
+      CALL mpp_bcast(rn_ice_age, jp_bdy)
       CALL mpp_bcast(ln_vol)
       CALL mpp_bcast(nn_volctl)
Index: /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/BDY/bdytides.F90
===================================================================
--- /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/BDY/bdytides.F90	(revision 9382)
+++ /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/BDY/bdytides.F90	(revision 9383)
@@ -117,8 +117,14 @@
             IF(lwm) THEN
                READ  ( numnam_ref, nambdy_tide, IOSTAT = ios, ERR = 901)
-901            IF( ios /= 0 ) CALL ctl_nam ( ios , 'nambdy_tide in reference namelist', lwm )
+901            CONTINUE
+            ENDIF
+            call mpp_bcast(ios)
+            IF( ios /= 0 ) CALL ctl_nam ( ios , 'nambdy_tide in reference namelist', lwp )
+            IF(lwm) THEN
                READ  ( numnam_cfg, nambdy_tide, IOSTAT = ios, ERR = 902 )
-902            IF( ios /= 0 ) CALL ctl_nam ( ios , 'nambdy_tide in configuration namelist', lwm )
+902            CONTINUE
             ENDIF
+            call mpp_bcast(ios)
+            IF( ios /= 0 ) CALL ctl_nam ( ios , 'nambdy_tide in configuration namelist', lwp )
 
             IF(lwm) WRITE ( numond, nambdy_tide )
Index: /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/CRS/crsini.F90
===================================================================
--- /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/CRS/crsini.F90	(revision 9382)
+++ /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/CRS/crsini.F90	(revision 9383)
@@ -89,9 +89,16 @@
          REWIND( numnam_ref )              ! Namelist namrun in reference namelist : Parameters of the run
          READ  ( numnam_ref, namcrs, IOSTAT = ios, ERR = 901)
-901      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namcrs in reference namelist', lwm )
+901      CONTINUE
+      ENDIF
+      call mpp_bcast(ios)
+      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namcrs in reference namelist', lwp )
+      IF(lwm) THEN
          REWIND( numnam_cfg )              ! Namelist namrun in configuration namelist : Parameters of the run
          READ  ( numnam_cfg, namcrs, IOSTAT = ios, ERR = 902 )
-902      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namcrs in configuration namelist', lwm )
+902      CONTINUE
       ENDIF
+      call mpp_bcast(ios)
+      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namcrs in configuration namelist', lwp )
+
       IF(lwm) WRITE ( numond, namcrs )
 
Index: /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/DIA/diadct.F90
===================================================================
--- /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/DIA/diadct.F90	(revision 9382)
+++ /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/DIA/diadct.F90	(revision 9383)
@@ -148,9 +148,15 @@
         REWIND( numnam_ref )              ! Namelist namdct in reference namelist : Diagnostic: transport through sections
         READ  ( numnam_ref, namdct, IOSTAT = ios, ERR = 901)
-901     IF( ios /= 0 ) CALL ctl_nam ( ios , 'namdct in reference namelist', lwm )
+901     CONTINUE
+     ENDIF
+     call mpp_bcast(ios)
+     IF( ios /= 0 ) CALL ctl_nam ( ios , 'namdct in reference namelist', lwp )
+     IF(lwm) THEN
         REWIND( numnam_cfg )              ! Namelist namdct in configuration namelist : Diagnostic: transport through sections
         READ  ( numnam_cfg, namdct, IOSTAT = ios, ERR = 902 )
-902     IF( ios /= 0 ) CALL ctl_nam ( ios , 'namdct in configuration namelist', lwm )
+902     CONTINUE
      ENDIF
+     call mpp_bcast(ios)
+     IF( ios /= 0 ) CALL ctl_nam ( ios , 'namdct in configuration namelist', lwp )
 
      IF(lwm) WRITE ( numond, namdct )
Index: /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/DIA/diaharm.F90
===================================================================
--- /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/DIA/diaharm.F90	(revision 9382)
+++ /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/DIA/diaharm.F90	(revision 9383)
@@ -92,9 +92,15 @@
          REWIND( numnam_ref )              ! Namelist nam_diaharm in reference namelist : Tidal harmonic analysis
          READ  ( numnam_ref, nam_diaharm, IOSTAT = ios, ERR = 901)
-901      IF( ios /= 0 ) CALL ctl_nam ( ios , 'nam_diaharm in reference namelist', lwm )
+901      CONTINUE
+      ENDIF
+      call mpp_bcast(ios)
+      IF( ios /= 0 ) CALL ctl_nam ( ios , 'nam_diaharm in reference namelist', lwp )
+      IF(lwm) THEN
          REWIND( numnam_cfg )              ! Namelist nam_diaharm in configuration namelist : Tidal harmonic analysis
          READ  ( numnam_cfg, nam_diaharm, IOSTAT = ios, ERR = 902 )
-902      IF( ios /= 0 ) CALL ctl_nam ( ios , 'nam_diaharm in configuration namelist', lwm )
+902      CONTINUE
       ENDIF
+      call mpp_bcast(ios)
+      IF( ios /= 0 ) CALL ctl_nam ( ios , 'nam_diaharm in configuration namelist', lwp )
 
       IF(lwm) WRITE ( numond, nam_diaharm )
Index: /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/DIA/diahsb.F90
===================================================================
--- /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/DIA/diahsb.F90	(revision 9382)
+++ /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/DIA/diahsb.F90	(revision 9383)
@@ -357,9 +357,15 @@
          REWIND( numnam_ref )              ! Namelist namhsb in reference namelist
          READ  ( numnam_ref, namhsb, IOSTAT = ios, ERR = 901)
-901      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namhsb in reference namelist', lwm )
+901      CONTINUE
+      ENDIF
+      call mpp_bcast(ios)
+      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namhsb in reference namelist', lwp )
+      IF(lwm) THEN
          REWIND( numnam_cfg )              ! Namelist namhsb in configuration namelist
          READ  ( numnam_cfg, namhsb, IOSTAT = ios, ERR = 902 )
-902      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namhsb in configuration namelist', lwm )
-      ENDIF
+902      CONTINUE
+      ENDIF
+      call mpp_bcast(ios)
+      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namhsb in configuration namelist', lwp )
 
       IF(lwm) WRITE ( numond, namhsb )
Index: /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/DIA/diaptr.F90
===================================================================
--- /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/DIA/diaptr.F90	(revision 9382)
+++ /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/DIA/diaptr.F90	(revision 9383)
@@ -432,9 +432,15 @@
          REWIND( numnam_ref )              ! Namelist namptr in reference namelist : Poleward transport
          READ  ( numnam_ref, namptr, IOSTAT = ios, ERR = 901)
-901      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namptr in reference namelist', lwm )
+901      CONTINUE
+      ENDIF
+      call mpp_bcast(ios)
+      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namptr in reference namelist', lwp )
+      IF(lwm) THEN
          REWIND( numnam_cfg )              ! Namelist namptr in configuration namelist : Poleward transport
          READ  ( numnam_cfg, namptr, IOSTAT = ios, ERR = 902 )
-902      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namptr in configuration namelist', lwm )
-      ENDIF
+902      CONTINUE
+      ENDIF
+      call mpp_bcast(ios)
+      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namptr in configuration namelist', lwp )
 
       IF(lwm) WRITE ( numond, namptr )
Index: /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/DOM/domain.F90
===================================================================
--- /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/DOM/domain.F90	(revision 9382)
+++ /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/DOM/domain.F90	(revision 9383)
@@ -163,9 +163,15 @@
          REWIND( numnam_ref )              ! Namelist namrun in reference namelist : Parameters of the run
          READ  ( numnam_ref, namrun, IOSTAT = ios, ERR = 901)
-901      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namrun in reference namelist', lwm )
+901      CONTINUE
+      ENDIF
+      call mpp_bcast(ios)
+      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namrun in reference namelist', lwp )
+      IF(lwm) THEN
          REWIND( numnam_cfg )              ! Namelist namrun in configuration namelist : Parameters of the run
          READ  ( numnam_cfg, namrun, IOSTAT = ios, ERR = 902 )
-902      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namrun in configuration namelist', lwm )
-      ENDIF
+902      CONTINUE
+      ENDIF
+      call mpp_bcast(ios)
+      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namrun in configuration namelist', lwp )
 
       IF(lwm) WRITE ( numond, namrun )
@@ -259,9 +265,15 @@
          REWIND( numnam_ref )              ! Namelist namdom in reference namelist : space & time domain (bathymetry, mesh, timestep)
          READ  ( numnam_ref, namdom, IOSTAT = ios, ERR = 903)
-903      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namdom in reference namelist', lwm )
+903      CONTINUE
+      ENDIF
+      call mpp_bcast(ios)
+      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namdom in reference namelist', lwp )
+      IF(lwm) THEN
          REWIND( numnam_cfg )              ! Namelist namdom in configuration namelist : space & time domain (bathymetry, mesh, timestep)
          READ  ( numnam_cfg, namdom, IOSTAT = ios, ERR = 904 )
-904      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namdom in configuration namelist', lwm )
-      ENDIF
+904      CONTINUE
+      ENDIF
+      call mpp_bcast(ios)
+      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namdom in configuration namelist', lwp )
 
       IF(lwm) WRITE ( numond, namdom )
@@ -327,9 +339,16 @@
          REWIND( numnam_ref )              ! Namelist namcla in reference namelist : Cross land advection
          READ  ( numnam_ref, namcla, IOSTAT = ios, ERR = 905)
-905      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namcla in reference namelist', lwm )
+905      CONTINUE
+      ENDIF
+      call mpp_bcast(ios)
+      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namcla in reference namelist', lwp )
+      IF(lwm) THEN
          REWIND( numnam_cfg )              ! Namelist namcla in configuration namelist : Cross land advection
          READ  ( numnam_cfg, namcla, IOSTAT = ios, ERR = 906 )
-906      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namcla in configuration namelist', lwm )
-      ENDIF
+906      CONTINUE
+      ENDIF
+      call mpp_bcast(ios)
+      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namcla in configuration namelist', lwp )
+
       IF(lwm) WRITE( numond, namcla )
 
@@ -354,9 +373,15 @@
          REWIND( numnam_ref )              ! Namelist namnc4 in reference namelist : NETCDF
          READ  ( numnam_ref, namnc4, IOSTAT = ios, ERR = 907)
-907      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namnc4 in reference namelist', lwm )
+907      CONTINUE
+      ENDIF
+      call mpp_bcast(ios)
+      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namnc4 in reference namelist', lwp )
+      IF(lwm) THEN
          REWIND( numnam_cfg )              ! Namelist namnc4 in configuration namelist : NETCDF
          READ  ( numnam_cfg, namnc4, IOSTAT = ios, ERR = 908 )
-908      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namnc4 in configuration namelist', lwm )
-      ENDIF
+908      CONTINUE
+      ENDIF
+      call mpp_bcast(ios)
+      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namnc4 in configuration namelist', lwp )
 
       IF(lwm) WRITE( numond, namnc4 )
Index: /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/DOM/dommsk.F90
===================================================================
--- /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/DOM/dommsk.F90	(revision 9382)
+++ /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/DOM/dommsk.F90	(revision 9383)
@@ -151,9 +151,15 @@
          REWIND( numnam_ref )              ! Namelist namlbc in reference namelist : Lateral momentum boundary condition
          READ  ( numnam_ref, namlbc, IOSTAT = ios, ERR = 901 )
-901      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namlbc in reference namelist', lwm )
+901      CONTINUE
+      ENDIF
+      call mpp_bcast(ios)
+      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namlbc in reference namelist', lwp )
+      IF(lwm) THEN
          REWIND( numnam_cfg )              ! Namelist namlbc in configuration namelist : Lateral momentum boundary condition
          READ  ( numnam_cfg, namlbc, IOSTAT = ios, ERR = 902 )
-902      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namlbc in configuration namelist', lwm )
-      ENDIF
+902      CONTINUE
+      ENDIF
+      call mpp_bcast(ios)
+      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namlbc in configuration namelist', lwp )
 
       IF(lwm) WRITE ( numond, namlbc )
Index: /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/DOM/domvvl.F90
===================================================================
--- /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/DOM/domvvl.F90	(revision 9382)
+++ /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/DOM/domvvl.F90	(revision 9383)
@@ -952,9 +952,16 @@
          REWIND( numnam_ref )              ! Namelist nam_vvl in reference namelist : 
          READ  ( numnam_ref, nam_vvl, IOSTAT = ios, ERR = 901)
-901      IF( ios /= 0 ) CALL ctl_nam ( ios , 'nam_vvl in reference namelist', lwm )
+901      CONTINUE
+      ENDIF
+      call mpp_bcast(ios)
+      IF( ios /= 0 ) CALL ctl_nam ( ios , 'nam_vvl in reference namelist', lwp )
+      IF(lwm) THEN
          REWIND( numnam_cfg )              ! Namelist nam_vvl in configuration namelist : Parameters of the run
          READ  ( numnam_cfg, nam_vvl, IOSTAT = ios, ERR = 902 )
-902      IF( ios /= 0 ) CALL ctl_nam ( ios , 'nam_vvl in configuration namelist', lwm )
-      ENDIF
+902      CONTINUE
+      ENDIF
+      call mpp_bcast(ios)
+      IF( ios /= 0 ) CALL ctl_nam ( ios , 'nam_vvl in configuration namelist', lwp )
+
       IF(lwm) WRITE ( numond, nam_vvl )
 
Index: /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/DOM/domzgr.F90
===================================================================
--- /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/DOM/domzgr.F90	(revision 9382)
+++ /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/DOM/domzgr.F90	(revision 9383)
@@ -49,5 +49,5 @@
 
    PUBLIC   dom_zgr        ! called by dom_init.F90
-   PRIVATE  zgr_namelist
+   PRIVATE  zgr_namelist, sco_namelist
 
    !                              !!* Namelist namzgr_sco *
@@ -111,12 +111,19 @@
          REWIND( numnam_ref )              ! Namelist namzgr in reference namelist : Vertical coordinate
          READ  ( numnam_ref, namzgr, IOSTAT = ios, ERR = 901 )
-      ENDIF
-901   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namzgr in reference namelist', lwp )
-      IF(lwp) THEN
+901      CONTINUE
+      ENDIF
+      call mpp_bcast(ios)
+      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namzgr in reference namelist', lwp )
+      IF(lwm) THEN
          REWIND( numnam_cfg )              ! Namelist namzgr in configuration namelist : Vertical coordinate
          READ  ( numnam_cfg, namzgr, IOSTAT = ios, ERR = 902 )
-      ENDIF
-902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namzgr in configuration namelist', lwp )
+902      CONTINUE
+      ENDIF
+      call mpp_bcast(ios)
+      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namzgr in configuration namelist', lwp )
+
       IF(lwm) WRITE ( numond, namzgr )
+
+      call zgr_namelist()
 
       IF(lwp) THEN                     ! Control print
@@ -1829,9 +1836,16 @@
          REWIND( numnam_ref )              ! Namelist namzgr_sco in reference namelist : Sigma-stretching parameters
          READ  ( numnam_ref, namzgr_sco, IOSTAT = ios, ERR = 901)
-901      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namzgr_sco in reference namelist', lwm )
+901      CONTINUE
+      ENDIF
+      call mpp_bcast(ios)
+      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namzgr_sco in reference namelist', lwp )
+      IF(lwm) THEN
          REWIND( numnam_cfg )              ! Namelist namzgr_sco in configuration namelist : Sigma-stretching parameters
          READ  ( numnam_cfg, namzgr_sco, IOSTAT = ios, ERR = 902 )
-902      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namzgr_sco in configuration namelist', lwm )
-      ENDIF
+902      CONTINUE
+      ENDIF
+      call mpp_bcast(ios)
+      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namzgr_sco in configuration namelist', lwp )
+
       IF(lwm) WRITE ( numond, namzgr_sco )
  
Index: /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/DOM/dtatsd.F90
===================================================================
--- /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/DOM/dtatsd.F90	(revision 9382)
+++ /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/DOM/dtatsd.F90	(revision 9383)
@@ -77,9 +77,16 @@
          REWIND( numnam_ref )              ! Namelist namtsd in reference namelist : 
          READ  ( numnam_ref, namtsd, IOSTAT = ios, ERR = 901)
-901      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namtsd in reference namelist', lwm )
+901      CONTINUE
+      ENDIF
+      call mpp_bcast(ios)
+      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namtsd in reference namelist', lwp )
+      IF(lwm) THEN
          REWIND( numnam_cfg )              ! Namelist namtsd in configuration namelist : Parameters of the run
          READ  ( numnam_cfg, namtsd, IOSTAT = ios, ERR = 902 )
-902      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namtsd in configuration namelist', lwm )
-      ENDIF
+902      CONTINUE
+      ENDIF
+      call mpp_bcast(ios)
+      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namtsd in configuration namelist', lwp )
+
       IF(lwm) WRITE ( numond, namtsd )
 
Index: /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/DYN/dynadv.F90
===================================================================
--- /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/DYN/dynadv.F90	(revision 9382)
+++ /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/DYN/dynadv.F90	(revision 9383)
@@ -105,9 +105,15 @@
          REWIND( numnam_ref )              ! Namelist namdyn_adv in reference namelist : Momentum advection scheme
          READ  ( numnam_ref, namdyn_adv, IOSTAT = ios, ERR = 901)
-901      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namdyn_adv in reference namelist', lwm )
+901      CONTINUE
+      ENDIF
+      call mpp_bcast(ios)
+      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namdyn_adv in reference namelist', lwp )
+      IF(lwm) THEN
          REWIND( numnam_cfg )              ! Namelist namdyn_adv in configuration namelist : Momentum advection scheme
          READ  ( numnam_cfg, namdyn_adv, IOSTAT = ios, ERR = 902 )
-902      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namdyn_adv in configuration namelist', lwm )
+902      CONTINUE
       ENDIF
+      call mpp_bcast(ios)
+      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namdyn_adv in configuration namelist', lwp )
 
       IF(lwm) WRITE ( numond, namdyn_adv )
Index: /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/DYN/dynhpg.F90
===================================================================
--- /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/DYN/dynhpg.F90	(revision 9382)
+++ /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/DYN/dynhpg.F90	(revision 9383)
@@ -139,9 +139,15 @@
          REWIND( numnam_ref )              ! Namelist namdyn_hpg in reference namelist : Hydrostatic pressure gradient
          READ  ( numnam_ref, namdyn_hpg, IOSTAT = ios, ERR = 901)
-901      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namdyn_hpg in reference namelist', lwm )
+901      CONTINUE
+      ENDIF
+      call mpp_bcast(ios)
+      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namdyn_hpg in reference namelist', lwp )
+      IF(lwm) THEN
          REWIND( numnam_cfg )              ! Namelist namdyn_hpg in configuration namelist : Hydrostatic pressure gradient
          READ  ( numnam_cfg, namdyn_hpg, IOSTAT = ios, ERR = 902 )
-902      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namdyn_hpg in configuration namelist', lwm )
+902      CONTINUE
       ENDIF
+      call mpp_bcast(ios)
+      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namdyn_hpg in configuration namelist', lwp )
 
       IF(lwm) WRITE ( numond, namdyn_hpg )
Index: /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/DYN/dynnept.F90
===================================================================
--- /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/DYN/dynnept.F90	(revision 9382)
+++ /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/DYN/dynnept.F90	(revision 9383)
@@ -122,9 +122,15 @@
          REWIND( numnam_ref )              ! Namelist namdyn_nept in reference namelist : Simplified Neptune
          READ  ( numnam_ref, namdyn_nept, IOSTAT = ios, ERR = 901)
-901      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namdyn_nept in reference namelist', lwm )
+901      CONTINUE
+      ENDIF
+      call mpp_bcast(ios)
+      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namdyn_nept in reference namelist', lwp )
+      IF(lwm) THEN
          REWIND( numnam_cfg )              ! Namelist namdyn_nept in reference namelist : Simplified Neptune
          READ  ( numnam_cfg, namdyn_nept, IOSTAT = ios, ERR = 902 )
-902      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namdyn_nept in configuration namelist', lwm )
-      ENDIF
+902      CONTINUE
+      ENDIF
+      call mpp_bcast(ios)
+      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namdyn_nept in configuration namelist', lwp )
 
       IF(lwm) WRITE ( numond, namdyn_nept )
Index: /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/DYN/dynspg_ts.F90
===================================================================
--- /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/DYN/dynspg_ts.F90	(revision 9382)
+++ /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/DYN/dynspg_ts.F90	(revision 9383)
@@ -1085,9 +1085,15 @@
          REWIND( numnam_ref )              ! Namelist namsplit in reference namelist : time splitting parameters
          READ  ( numnam_ref, namsplit, IOSTAT = ios, ERR = 901)
-901      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namsplit in reference namelist', lwm )
+901      CONTINUE
+      ENDIF
+      call mpp_bcast(ios)
+      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namsplit in reference namelist', lwp )
+      IF(lwm) THEN
          REWIND( numnam_cfg )              ! Namelist namsplit in configuration namelist : time splitting parameters
          READ  ( numnam_cfg, namsplit, IOSTAT = ios, ERR = 902 )
-902      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namsplit in configuration namelist', lwm )
-      ENDIF
+902      CONTINUE
+      ENDIF
+      call mpp_bcast(ios)
+      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namsplit in configuration namelist', lwp )
 
       IF(lwm) WRITE ( numond, namsplit )
Index: /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/DYN/dynvor.F90
===================================================================
--- /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/DYN/dynvor.F90	(revision 9382)
+++ /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/DYN/dynvor.F90	(revision 9383)
@@ -726,9 +726,16 @@
          REWIND( numnam_ref )              ! Namelist namdyn_vor in reference namelist : Vorticity scheme options
          READ  ( numnam_ref, namdyn_vor, IOSTAT = ios, ERR = 901)
-901      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namdyn_vor in reference namelist', lwm )
+901      CONTINUE
+      ENDIF
+      call mpp_bcast(ios)
+      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namdyn_vor in reference namelist', lwp )
+      IF(lwm) THEN
          REWIND( numnam_cfg )              ! Namelist namdyn_vor in configuration namelist : Vorticity scheme options
          READ  ( numnam_cfg, namdyn_vor, IOSTAT = ios, ERR = 902 )
-902      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namdyn_vor in configuration namelist', lwm )
-      ENDIF
+902      CONTINUE
+      ENDIF
+      call mpp_bcast(ios)
+      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namdyn_vor in configuration namelist', lwp )
+
       IF(lwm) WRITE ( numond, namdyn_vor )
 
Index: /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/ICB/icbini.F90
===================================================================
--- /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/ICB/icbini.F90	(revision 9382)
+++ /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/ICB/icbini.F90	(revision 9383)
@@ -366,9 +366,15 @@
          REWIND( numnam_ref )              ! Namelist namberg in reference namelist : Iceberg parameters
          READ  ( numnam_ref, namberg, IOSTAT = ios, ERR = 901)
-901      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namberg in reference namelist', lwm )
+901      CONTINUE
+      ENDIF
+      call mpp_bcast(ios)
+      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namberg in reference namelist', lwp )
+      IF(lwm) THEN
          REWIND( numnam_cfg )              ! Namelist namberg in configuration namelist : Iceberg parameters
          READ  ( numnam_cfg, namberg, IOSTAT = ios, ERR = 902 )
-902      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namberg in configuration namelist', lwm )
-      ENDIF
+902      CONTINUE
+      ENDIF
+      call mpp_bcast(ios)
+      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namberg in configuration namelist', lwp )
 
       IF(lwm) WRITE ( numond, namberg )
Index: /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/LBC/lib_mpp.F90
===================================================================
--- /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/LBC/lib_mpp.F90	(revision 9382)
+++ /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/LBC/lib_mpp.F90	(revision 9383)
@@ -90,5 +90,5 @@
    INTERFACE mpp_bcast
       MODULE PROCEDURE mpp_bcast_i1, mpp_bcast_da, mpp_bcast_ch, mpp_bcast_ia, mpp_bcast_l, &
-     &                 mpp_bcast_d, mpp_bcast_d2a, mpp_bcast_d3a
+     &                 mpp_bcast_d, mpp_bcast_d2a, mpp_bcast_d3a, mpp_bcast_lv
    END INTERFACE
    INTERFACE mpp_min
@@ -1853,5 +1853,7 @@
       INTEGER, INTENT(INOUT) :: ival  ! value to broadcast 
       INTEGER :: ierror ! mpi error
+
       CALL MPI_BCAST(ival, 1, MPI_INTEGER4, 0, mpi_comm_opa, ierror)
+
    END SUBROUTINE mpp_bcast_i1
 
@@ -1867,5 +1869,7 @@
       INTEGER, INTENT(IN)  :: lng          ! length of dval 
       INTEGER              :: ierror       ! mpi error
+
       CALL MPI_BCAST(dvalv, lng, mpi_double_precision, 0, mpi_comm_opa, ierror) 
+
    END SUBROUTINE mpp_bcast_da
 
@@ -1884,5 +1888,7 @@
       INTEGER              :: itotal          ! local variable
       itotal = nx*ny
+
       CALL MPI_BCAST(dvala, itotal, mpi_double_precision, 0, mpi_comm_opa, ierror) 
+
    END SUBROUTINE mpp_bcast_d2a
 
@@ -1898,5 +1904,7 @@
       INTEGER, INTENT(IN)  :: nx, ny, nz          ! size of dvala 
       INTEGER              :: ierror          ! mpi error
+
       CALL MPI_BCAST(dvala, nx*ny*nz, mpi_double_precision, 0, mpi_comm_opa, ierror) 
+
    END SUBROUTINE mpp_bcast_d3a
 
@@ -1911,5 +1919,7 @@
       REAL(wp), INTENT(INOUT) :: dval        ! real 1D array 
       INTEGER              :: ierror       ! mpi error
+
       CALL MPI_BCAST(dval, 1, mpi_double_precision, 0, mpi_comm_opa, ierror) 
+
    END SUBROUTINE mpp_bcast_d
 
@@ -1922,8 +1932,10 @@
       !i!              processor 0 - lwm = .true.. NETCDF related call
       !!--------------------------------------------------------------------------
-      CHARACTER(len=lng), INTENT(IN) :: cstring      ! string 1D array 
+      CHARACTER(len=lng), INTENT(INOUT) :: cstring      ! string 1D array 
       INTEGER, INTENT(IN)            :: lng          ! length of cstring 
       INTEGER                        :: ierror       ! mpi error
+
       CALL MPI_BCAST(cstring, lng, MPI_CHARACTER, 0, mpi_comm_opa, ierror)
+
    END SUBROUTINE mpp_bcast_ch
 
@@ -1932,5 +1944,7 @@
       INTEGER, INTENT (IN)                :: lng
       INTEGER                             :: ierror       ! mpi error
+
       CALL MPI_BCAST(ivalv, lng, MPI_INTEGER4, 0, mpi_comm_opa, ierror)
+
    END SUBROUTINE mpp_bcast_ia
 
@@ -1938,6 +1952,17 @@
       LOGICAL, INTENT(INOUT) :: lval  ! value to broadcast 
       INTEGER             :: ierror       ! mpi error
+
       CALL MPI_BCAST(lval, 1, MPI_LOGICAL, 0, mpi_comm_opa, ierror)
+
    END SUBROUTINE mpp_bcast_l
+
+   SUBROUTINE mpp_bcast_lv(ldval, inln)
+      LOGICAL, DIMENSION(inln), INTENT(INOUT) :: ldval  ! value to broadcast 
+      INTEGER,                  INTENT(IN)    :: inln
+      INTEGER                                 :: ierror       ! mpi error
+
+      CALL MPI_BCAST(ldval, inln, MPI_LOGICAL, 0, mpi_comm_opa, ierror)
+
+   END SUBROUTINE mpp_bcast_lv
 
    SUBROUTINE mpp_bcast_d2d(dval, ni, nj)
Index: /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/LDF/ldfdyn.F90
===================================================================
--- /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/LDF/ldfdyn.F90	(revision 9382)
+++ /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/LDF/ldfdyn.F90	(revision 9383)
@@ -77,10 +77,15 @@
          REWIND( numnam_ref )              ! Namelist namdyn_ldf in reference namelist : Lateral physics
          READ  ( numnam_ref, namdyn_ldf, IOSTAT = ios, ERR = 901)
-901      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namdyn_ldf in reference namelist', lwm )
-
+901      CONTINUE
+      ENDIF
+      call mpp_bcast(ios)
+      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namdyn_ldf in reference namelist', lwp )
+      IF(lwm) THEN
          REWIND( numnam_cfg )              ! Namelist namdyn_ldf in configuration namelist : Lateral physics
          READ  ( numnam_cfg, namdyn_ldf, IOSTAT = ios, ERR = 902 )
-902      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namdyn_ldf in configuration namelist', lwm )
-      ENDIF
+902      CONTINUE
+      ENDIF
+      call mpp_bcast(ios)
+      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namdyn_ldf in configuration namelist', lwp )
 
       IF(lwm) WRITE ( numond, namdyn_ldf )
Index: /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/LDF/ldftra.F90
===================================================================
--- /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/LDF/ldftra.F90	(revision 9382)
+++ /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/LDF/ldftra.F90	(revision 9383)
@@ -81,9 +81,16 @@
          REWIND( numnam_ref )              ! Namelist namtra_ldf in reference namelist : Lateral physics on tracers
          READ  ( numnam_ref, namtra_ldf, IOSTAT = ios, ERR = 901)
-901      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namtra_ldf in reference namelist', lwm )
+901      CONTINUE
+      ENDIF
+      call mpp_bcast(ios)
+      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namtra_ldf in reference namelist', lwp )
+      IF(lwm) THEN
          REWIND( numnam_cfg )              ! Namelist namtra_ldf in configuration namelist : Lateral physics on tracers
          READ  ( numnam_cfg, namtra_ldf, IOSTAT = ios, ERR = 902 )
-902      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namtra_ldf in configuration namelist', lwm )
-      ENDIF
+902      CONTINUE
+      ENDIF
+      call mpp_bcast(ios)
+      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namtra_ldf in configuration namelist', lwp )
+
       IF(lwm) WRITE ( numond, namtra_ldf )
 
Index: /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/OBS/diaobs.F90
===================================================================
--- /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/OBS/diaobs.F90	(revision 9382)
+++ /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/OBS/diaobs.F90	(revision 9383)
@@ -1598,3 +1598,4 @@
 
     END SUBROUTINE fin_date
+
 END MODULE diaobs
Index: /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/SBC/albedo.F90
===================================================================
--- /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/SBC/albedo.F90	(revision 9382)
+++ /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/SBC/albedo.F90	(revision 9383)
@@ -257,9 +257,16 @@
          REWIND( numnam_ref )              ! Namelist namsbc_alb in reference namelist : Albedo parameters
          READ  ( numnam_ref, namsbc_alb, IOSTAT = ios, ERR = 901)
-901      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namsbc_alb in reference namelist', lwm )
+901      CONTINUE
+      ENDIF
+      call mpp_bcast(ios)
+      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namsbc_alb in reference namelist', lwp )
+      IF(lwm) THEN
          REWIND( numnam_cfg )              ! Namelist namsbc_alb in configuration namelist : Albedo parameters
          READ  ( numnam_cfg, namsbc_alb, IOSTAT = ios, ERR = 902 )
-902      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namsbc_alb in configuration namelist', lwm )
+902      CONTINUE
       ENDIF
+      call mpp_bcast(ios)
+      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namsbc_alb in configuration namelist', lwp )
+
       IF(lwm) WRITE ( numond, namsbc_alb )
       !
Index: /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/SBC/sbcana.F90
===================================================================
--- /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/SBC/sbcana.F90	(revision 9382)
+++ /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/SBC/sbcana.F90	(revision 9383)
@@ -78,9 +78,15 @@
             REWIND( numnam_ref )              ! Namelist namsbc_ana in reference namelist : Analytical surface fluxes
             READ  ( numnam_ref, namsbc_ana, IOSTAT = ios, ERR = 901)
-901         IF( ios /= 0 ) CALL ctl_nam ( ios , 'namsbc_ana in reference namelist', lwm )
+901         CONTINUE
+         ENDIF
+         call mpp_bcast(ios)
+         IF( ios /= 0 ) CALL ctl_nam ( ios , 'namsbc_ana in reference namelist', lwp )
+         IF(lwm) THEN
             REWIND( numnam_cfg )              ! Namelist namsbc_ana in configuration namelist : Analytical surface fluxes
             READ  ( numnam_cfg, namsbc_ana, IOSTAT = ios, ERR = 902 )
-902         IF( ios /= 0 ) CALL ctl_nam ( ios , 'namsbc_ana in configuration namelist', lwm )
+902         CONTINUE
          ENDIF
+         call mpp_bcast(ios)
+         IF( ios /= 0 ) CALL ctl_nam ( ios , 'namsbc_ana in configuration namelist', lwp )
 
          IF(lwm) WRITE ( numond, namsbc_ana )
Index: /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/SBC/sbcapr.F90
===================================================================
--- /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/SBC/sbcapr.F90	(revision 9382)
+++ /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/SBC/sbcapr.F90	(revision 9383)
@@ -84,9 +84,15 @@
             REWIND( numnam_ref )              ! Namelist namsbc_apr in reference namelist : File for atmospheric pressure forcing
             READ  ( numnam_ref, namsbc_apr, IOSTAT = ios, ERR = 901)
-901         IF( ios /= 0 ) CALL ctl_nam ( ios , 'namsbc_apr in reference namelist', lwm )
+901         CONTINUE
+         ENDIF
+         call mpp_bcast(ios)
+         IF( ios /= 0 ) CALL ctl_nam ( ios , 'namsbc_apr in reference namelist', lwp )
+         IF(lwm) THEN
             REWIND( numnam_cfg )              ! Namelist namsbc_apr in configuration namelist : File for atmospheric pressure forcing
             READ  ( numnam_cfg, namsbc_apr, IOSTAT = ios, ERR = 902 )
-902         IF( ios /= 0 ) CALL ctl_nam ( ios , 'namsbc_apr in configuration namelist', lwm )
-         ENDIF
+902         CONTINUE
+         ENDIF
+         call mpp_bcast(ios)
+         IF( ios /= 0 ) CALL ctl_nam ( ios , 'namsbc_apr in configuration namelist', lwp )
 
          IF(lwm) WRITE ( numond, namsbc_apr )
Index: /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/SBC/sbcblk_clio.F90
===================================================================
--- /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/SBC/sbcblk_clio.F90	(revision 9382)
+++ /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/SBC/sbcblk_clio.F90	(revision 9383)
@@ -149,9 +149,16 @@
             REWIND( numnam_ref )              ! Namelist namsbc_clio in reference namelist : CLIO files
             READ  ( numnam_ref, namsbc_clio, IOSTAT = ios, ERR = 901)
-901         IF( ios /= 0 ) CALL ctl_nam ( ios , 'namsbc_clio in reference namelist', lwm )
+901         CONTINUE
+         ENDIF
+         call mpp_bcast(ios)
+         IF( ios /= 0 ) CALL ctl_nam ( ios , 'namsbc_clio in reference namelist', lwp )
+         IF(lwm) THEN
             REWIND( numnam_cfg )              ! Namelist namsbc_clio in configuration namelist : CLIO files
             READ  ( numnam_cfg, namsbc_clio, IOSTAT = ios, ERR = 902 )
-902         IF( ios /= 0 ) CALL ctl_nam ( ios , 'namsbc_clio in configuration namelist', lwm )
+902         CONTINUE
          ENDIF
+         call mpp_bcast(ios)
+         IF( ios /= 0 ) CALL ctl_nam ( ios , 'namsbc_clio in configuration namelist', lwp )
+
          IF(lwm) WRITE ( numond, namsbc_clio )
 
Index: /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/SBC/sbcblk_core.F90
===================================================================
--- /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/SBC/sbcblk_core.F90	(revision 9382)
+++ /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/SBC/sbcblk_core.F90	(revision 9383)
@@ -164,9 +164,15 @@
             REWIND( numnam_ref )              ! Namelist namsbc_core in reference namelist : CORE bulk parameters
             READ  ( numnam_ref, namsbc_core, IOSTAT = ios, ERR = 901)
-901         IF( ios /= 0 ) CALL ctl_nam ( ios , 'namsbc_core in reference namelist', lwm )
+901         CONTINUE
+         ENDIF
+         call mpp_bcast(ios)
+         IF( ios /= 0 ) CALL ctl_nam ( ios , 'namsbc_core in reference namelist', lwp )
+         IF(lwm) THEN
             REWIND( numnam_cfg )              ! Namelist namsbc_core in configuration namelist : CORE bulk parameters
             READ  ( numnam_cfg, namsbc_core, IOSTAT = ios, ERR = 902 )
-902         IF( ios /= 0 ) CALL ctl_nam ( ios , 'namsbc_core in configuration namelist', lwm )
+902         CONTINUE
          ENDIF
+         call mpp_bcast(ios)
+         IF( ios /= 0 ) CALL ctl_nam ( ios , 'namsbc_core in configuration namelist', lwp )
 
          IF(lwm) WRITE( numond, namsbc_core )
Index: /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/SBC/sbcblk_mfs.F90
===================================================================
--- /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/SBC/sbcblk_mfs.F90	(revision 9382)
+++ /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/SBC/sbcblk_mfs.F90	(revision 9383)
@@ -139,9 +139,16 @@
             REWIND( numnam_ref )              ! Namelist namsbc_msf in reference namelist : MFS files
             READ  ( numnam_ref, namsbc_mfs, IOSTAT = ios, ERR = 901)
-901         IF( ios /= 0 ) CALL ctl_nam ( ios , 'namsbc_mfs in reference namelist', lwm )
+901         CONTINUE
+         ENDIF
+         call mpp_bcast(ios)
+         IF( ios /= 0 ) CALL ctl_nam ( ios , 'namsbc_mfs in reference namelist', lwp )
+         IF(lwm) THEN
             REWIND( numnam_cfg )              ! Namelist namsbc_msf in configuration namelist : MFS files
             READ  ( numnam_cfg, namsbc_mfs, IOSTAT = ios, ERR = 902 )
-902         IF( ios /= 0 ) CALL ctl_nam ( ios , 'namsbc_mfs in configuration namelist', lwm )
+902         CONTINUE
          ENDIF
+         call mpp_bcast(ios)
+         IF( ios /= 0 ) CALL ctl_nam ( ios , 'namsbc_mfs in configuration namelist', lwp )
+
          IF(lwm) WRITE ( numond, namsbc_mfs )
          !
Index: /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/SBC/sbccpl.F90
===================================================================
--- /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/SBC/sbccpl.F90	(revision 9382)
+++ /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/SBC/sbccpl.F90	(revision 9383)
@@ -263,9 +263,16 @@
          REWIND( numnam_ref )              ! Namelist namsbc_cpl in reference namelist : Variables for OASIS coupling
          READ  ( numnam_ref, namsbc_cpl, IOSTAT = ios, ERR = 901)
-901      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namsbc_cpl in reference namelist', lwm )
+901      CONTINUE
+      ENDIF
+      call mpp_bcast(ios)
+      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namsbc_cpl in reference namelist', lwp )
+      IF(lwm) THEN
          REWIND( numnam_cfg )              ! Namelist namsbc_cpl in configuration namelist : Variables for OASIS coupling
          READ  ( numnam_cfg, namsbc_cpl, IOSTAT = ios, ERR = 902 )
-902      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namsbc_cpl in configuration namelist', lwm )
-      ENDIF
+902      CONTINUE
+      ENDIF
+      call mpp_bcast(ios)
+      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namsbc_cpl in configuration namelist', lwp )
+
       IF(lwm) WRITE ( numond, namsbc_cpl )
 
Index: /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/SBC/sbcflx.F90
===================================================================
--- /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/SBC/sbcflx.F90	(revision 9382)
+++ /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/SBC/sbcflx.F90	(revision 9383)
@@ -97,9 +97,16 @@
             REWIND( numnam_ref )              ! Namelist namsbc_flx in reference namelist : Files for fluxes
             READ  ( numnam_ref, namsbc_flx, IOSTAT = ios, ERR = 901)
-901         IF( ios /= 0 ) CALL ctl_nam ( ios , 'namsbc_flx in reference namelist', lwm )
+901         CONTINUE
+         ENDIF
+         call mpp_bcast(ios)
+         IF( ios /= 0 ) CALL ctl_nam ( ios , 'namsbc_flx in reference namelist', lwp )
+         IF(lwm) THEN
             REWIND( numnam_cfg )              ! Namelist namsbc_flx in configuration namelist : Files for fluxes
             READ  ( numnam_cfg, namsbc_flx, IOSTAT = ios, ERR = 902 )
-902         IF( ios /= 0 ) CALL ctl_nam ( ios , 'namsbc_flx in configuration namelist', lwm )
-         ENDIF
+902         CONTINUE
+         ENDIF
+         call mpp_bcast(ios)
+         IF( ios /= 0 ) CALL ctl_nam ( ios , 'namsbc_flx in configuration namelist', lwp )
+
          IF(lwm) WRITE ( numond, namsbc_flx ) 
          !
Index: /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/SBC/sbcice_cice.F90
===================================================================
--- /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/SBC/sbcice_cice.F90	(revision 9382)
+++ /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/SBC/sbcice_cice.F90	(revision 9383)
@@ -869,9 +869,15 @@
             REWIND( numnam_ref )              ! Namelist namsbc_cice in reference namelist : 
             READ  ( numnam_ref, namsbc_cice, IOSTAT = ios, ERR = 901)
-901         IF( ios /= 0 ) CALL ctl_nam ( ios , 'namsbc_cice in reference namelist', lwm )
+901         CONTINUE
+         ENDIF
+         call mpp_bcast(ios)
+         IF( ios /= 0 ) CALL ctl_nam ( ios , 'namsbc_cice in reference namelist', lwp )
+         IF(lwm) THEN
             REWIND( numnam_cfg )              ! Namelist namsbc_cice in configuration namelist : Parameters of the run
             READ  ( numnam_cfg, namsbc_cice, IOSTAT = ios, ERR = 902 )
-902         IF( ios /= 0 ) CALL ctl_nam ( ios , 'namsbc_cice in configuration namelist', lwm )
+902         CONTINUE
          ENDIF
+         call mpp_bcast(ios)
+         IF( ios /= 0 ) CALL ctl_nam ( ios , 'namsbc_cice in configuration namelist', lwp )
 
          IF(lwm) WRITE ( numond, namsbc_cice )
Index: /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/SBC/sbcice_if.F90
===================================================================
--- /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/SBC/sbcice_if.F90	(revision 9382)
+++ /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/SBC/sbcice_if.F90	(revision 9383)
@@ -78,9 +78,15 @@
             REWIND( numnam_ref )              ! Namelist namsbc_iif in reference namelist : Ice if file
             READ  ( numnam_ref, namsbc_iif, IOSTAT = ios, ERR = 901)
-901         IF( ios /= 0 ) CALL ctl_nam ( ios , 'namsbc_iif in reference namelist', lwm )
+901         CONTINUE
+         ENDIF
+         call mpp_bcast(ios)
+         IF( ios /= 0 ) CALL ctl_nam ( ios , 'namsbc_iif in reference namelist', lwp )
+         IF(lwm) THEN
             REWIND( numnam_cfg )              ! Namelist Namelist namsbc_iif in configuration namelist : Ice if file
             READ  ( numnam_cfg, namsbc_iif, IOSTAT = ios, ERR = 902 )
-902         IF( ios /= 0 ) CALL ctl_nam ( ios , 'namsbc_iif in configuration namelist', lwm )
+902         CONTINUE
          ENDIF
+         call mpp_bcast(ios)
+         IF( ios /= 0 ) CALL ctl_nam ( ios , 'namsbc_iif in configuration namelist', lwp )
 
          IF(lwm) WRITE ( numond, namsbc_iif )
Index: /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/SBC/sbcisf.F90
===================================================================
--- /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/SBC/sbcisf.F90	(revision 9382)
+++ /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/SBC/sbcisf.F90	(revision 9383)
@@ -109,9 +109,15 @@
             REWIND( numnam_ref )              ! Namelist namsbc_rnf in reference namelist : Runoffs 
             READ  ( numnam_ref, namsbc_isf, IOSTAT = ios, ERR = 901)
-901         IF( ios /= 0 ) CALL ctl_nam ( ios , 'namsbc_isf in reference namelist', lwm )
+901         CONTINUE
+         ENDIF
+         call mpp_bcast(ios)
+         IF( ios /= 0 ) CALL ctl_nam ( ios , 'namsbc_isf in reference namelist', lwp )
+         IF(lwm) THEN
             REWIND( numnam_cfg )              ! Namelist namsbc_rnf in configuration namelist : Runoffs
             READ  ( numnam_cfg, namsbc_isf, IOSTAT = ios, ERR = 902 )
-902         IF( ios /= 0 ) CALL ctl_nam ( ios , 'namsbc_isf in configuration namelist', lwm )
+902         CONTINUE
          ENDIF
+         call mpp_bcast(ios)
+         IF( ios /= 0 ) CALL ctl_nam ( ios , 'namsbc_isf in configuration namelist', lwp )
 
          IF(lwm) WRITE ( numond, namsbc_isf )
Index: /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/SBC/sbcmod.F90
===================================================================
--- /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/SBC/sbcmod.F90	(revision 9382)
+++ /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/SBC/sbcmod.F90	(revision 9383)
@@ -106,9 +106,16 @@
          REWIND( numnam_ref )              ! Namelist namsbc in reference namelist : Surface boundary
          READ  ( numnam_ref, namsbc, IOSTAT = ios, ERR = 901)
-901      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namsbc in reference namelist', lwm )
+901      CONTINUE
+      ENDIF
+      call mpp_bcast(ios)
+      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namsbc in reference namelist', lwp )
+      IF(lwm) THEN
          REWIND( numnam_cfg )              ! Namelist namsbc in configuration namelist : Parameters of the run
          READ  ( numnam_cfg, namsbc, IOSTAT = ios, ERR = 902 )
-902      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namsbc in configuration namelist', lwm )
-      ENDIF
+902      CONTINUE
+      ENDIF
+      call mpp_bcast(ios)
+      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namsbc in configuration namelist', lwp )
+
       IF(lwm) WRITE ( numond, namsbc )
 
Index: /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/SBC/sbcrnf.F90
===================================================================
--- /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/SBC/sbcrnf.F90	(revision 9382)
+++ /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/SBC/sbcrnf.F90	(revision 9383)
@@ -287,9 +287,16 @@
          REWIND( numnam_ref )              ! Namelist namsbc_rnf in reference namelist : Runoffs 
          READ  ( numnam_ref, namsbc_rnf, IOSTAT = ios, ERR = 901)
-901      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namsbc_rnf in reference namelist', lwm )
+901      CONTINUE
+      ENDIF
+      call mpp_bcast(ios)
+      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namsbc_rnf in reference namelist', lwp )
+      IF(lwm) THEN
          REWIND( numnam_cfg )              ! Namelist namsbc_rnf in configuration namelist : Runoffs
          READ  ( numnam_cfg, namsbc_rnf, IOSTAT = ios, ERR = 902 )
-902      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namsbc_rnf in configuration namelist', lwm )
-      ENDIF
+902      CONTINUE
+      ENDIF
+      call mpp_bcast(ios)
+      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namsbc_rnf in configuration namelist', lwp )
+
       IF(lwm) WRITE ( numond, namsbc_rnf )
       !
Index: /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/SBC/sbcssr.F90
===================================================================
--- /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/SBC/sbcssr.F90	(revision 9382)
+++ /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/SBC/sbcssr.F90	(revision 9383)
@@ -177,9 +177,16 @@
          REWIND( numnam_ref )              ! Namelist namsbc_ssr in reference namelist : 
          READ  ( numnam_ref, namsbc_ssr, IOSTAT = ios, ERR = 901)
-901      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namsbc_ssr in reference namelist', lwm )
+901      CONTINUE
+      ENDIF
+      call mpp_bcast(ios)
+      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namsbc_ssr in reference namelist', lwp )
+      IF(lwm) THEN
          REWIND( numnam_cfg )              ! Namelist namsbc_ssr in configuration namelist :
          READ  ( numnam_cfg, namsbc_ssr, IOSTAT = ios, ERR = 902 )
-902      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namsbc_ssr in configuration namelist', lwm )
-      ENDIF
+902      CONTINUE
+      ENDIF
+      call mpp_bcast(ios)
+      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namsbc_ssr in configuration namelist', lwp )
+
       IF(lwm) WRITE ( numond, namsbc_ssr )
 
Index: /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/SBC/sbcwave.F90
===================================================================
--- /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/SBC/sbcwave.F90	(revision 9382)
+++ /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/SBC/sbcwave.F90	(revision 9383)
@@ -87,9 +87,15 @@
             REWIND( numnam_ref )              ! Namelist namsbc_wave in reference namelist : File for drag coeff. from wave model
             READ  ( numnam_ref, namsbc_wave, IOSTAT = ios, ERR = 901)
-901         IF( ios /= 0 ) CALL ctl_nam ( ios , 'namsbc_wave in reference namelist', lwm )
+901         CONTINUE
+         ENDIF
+         call mpp_bcast(ios)
+         IF( ios /= 0 ) CALL ctl_nam ( ios , 'namsbc_wave in reference namelist', lwp )
+         IF(lwm) THEN
             REWIND( numnam_cfg )              ! Namelist namsbc_wave in configuration namelist : File for drag coeff. from wave model
             READ  ( numnam_cfg, namsbc_wave, IOSTAT = ios, ERR = 902 )
-902         IF( ios /= 0 ) CALL ctl_nam ( ios , 'namsbc_wave in configuration namelist', lwm )
+902         CONTINUE
          ENDIF
+         call mpp_bcast(ios)
+         IF( ios /= 0 ) CALL ctl_nam ( ios , 'namsbc_wave in configuration namelist', lwp )
 
          IF(lwm) WRITE ( numond, namsbc_wave )
Index: /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/SBC/tideini.F90
===================================================================
--- /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/SBC/tideini.F90	(revision 9382)
+++ /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/SBC/tideini.F90	(revision 9383)
@@ -69,9 +69,15 @@
           REWIND( numnam_ref )              ! Namelist nam_tide in reference namelist : Tides
           READ  ( numnam_ref, nam_tide, IOSTAT = ios, ERR = 901)
-901       IF( ios /= 0 ) CALL ctl_nam ( ios , 'nam_tide in reference namelist', lwm )
+901       CONTINUE
+       ENDIF
+       call mpp_bcast(ios)
+       IF( ios /= 0 ) CALL ctl_nam ( ios , 'nam_tide in reference namelist', lwp )
+       IF(lwm) THEN
           REWIND( numnam_cfg )              ! Namelist nam_tide in configuration namelist : Tides
           READ  ( numnam_cfg, nam_tide, IOSTAT = ios, ERR = 902 )
-902       IF( ios /= 0 ) CALL ctl_nam ( ios , 'nam_tide in configuration namelist', lwm )
+902       CONTINUE
        ENDIF
+       call mpp_bcast(ios)
+       IF( ios /= 0 ) CALL ctl_nam ( ios , 'nam_tide in configuration namelist', lwp )
 
        IF(lwm) WRITE ( numond, nam_tide )
Index: /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/SOL/solver.F90
===================================================================
--- /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/SOL/solver.F90	(revision 9382)
+++ /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/SOL/solver.F90	(revision 9383)
@@ -66,9 +66,15 @@
          REWIND( numnam_ref )              ! Namelist namsol in reference namelist : Elliptic solver / free surface
          READ  ( numnam_ref, namsol, IOSTAT = ios, ERR = 901)
-901      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namsol in reference namelist', lwm )
+901      CONTINUE
+      ENDIF
+      call mpp_bcast(ios)
+      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namsol in reference namelist', lwp )
+      IF(lwm) THEN
          REWIND( numnam_cfg )              ! Namelist namsol in configuration namelist : Elliptic solver / free surface
          READ  ( numnam_cfg, namsol, IOSTAT = ios, ERR = 902 )
-902      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namsol in configuration namelist', lwm )
+902      CONTINUE
       ENDIF
+      call mpp_bcast(ios)
+      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namsol in configuration namelist', lwp )
 
       IF(lwm) WRITE ( numond, namsol )
Index: /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/STO/stopar.F90
===================================================================
--- /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/STO/stopar.F90	(revision 9382)
+++ /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/STO/stopar.F90	(revision 9383)
@@ -265,9 +265,16 @@
          REWIND( numnam_ref )              ! Namelist namdyn_adv in reference namelist : Momentum advection scheme
          READ  ( numnam_ref, namsto, IOSTAT = ios, ERR = 901)
-901      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namsto in reference namelist', lwm )
+901      CONTINUE
+      ENDIF
+      call mpp_bcast(ios)
+      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namsto in reference namelist', lwp )
+      IF(lwm) THEN
          REWIND( numnam_cfg )              ! Namelist namdyn_adv in configuration namelist : Momentum advection scheme
          READ  ( numnam_cfg, namsto, IOSTAT = ios, ERR = 902 )
-902      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namsto in configuration namelist', lwm )
-      ENDIF
+902      CONTINUE
+      ENDIF
+      call mpp_bcast(ios)
+      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namsto in configuration namelist', lwp )
+
       IF(lwm) WRITE ( numond, namsto )
 
Index: /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/TRA/eosbn2.F90
===================================================================
--- /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/TRA/eosbn2.F90	(revision 9382)
+++ /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/TRA/eosbn2.F90	(revision 9383)
@@ -1236,9 +1236,16 @@
          REWIND( numnam_ref )              ! Namelist nameos in reference namelist : equation of state
          READ  ( numnam_ref, nameos, IOSTAT = ios, ERR = 901 )
-901      IF( ios /= 0 ) CALL ctl_nam ( ios , 'nameos in reference namelist', lwm )
+901      CONTINUE
+      ENDIF
+      call mpp_bcast(ios)
+      IF( ios /= 0 ) CALL ctl_nam ( ios , 'nameos in reference namelist', lwp )
+      IF(lwm) THEN
          REWIND( numnam_cfg )              ! Namelist nameos in configuration namelist : equation of state
          READ  ( numnam_cfg, nameos, IOSTAT = ios, ERR = 902 )
-902      IF( ios /= 0 ) CALL ctl_nam ( ios , 'nameos in configuration namelist', lwm )
+902      CONTINUE
       ENDIF
+      call mpp_bcast(ios)
+      IF( ios /= 0 ) CALL ctl_nam ( ios , 'nameos in configuration namelist', lwp )
+
       IF(lwm) WRITE( numond, nameos )
       !
Index: /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/TRA/traadv.F90
===================================================================
--- /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/TRA/traadv.F90	(revision 9382)
+++ /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/TRA/traadv.F90	(revision 9383)
@@ -199,9 +199,15 @@
          REWIND( numnam_ref )              ! Namelist namtra_adv in reference namelist : Tracer advection scheme
          READ  ( numnam_ref, namtra_adv, IOSTAT = ios, ERR = 901)
-901      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namtra_adv in reference namelist', lwm )
+901      CONTINUE
+      ENDIF
+      call mpp_bcast(ios)
+      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namtra_adv in reference namelist', lwp )
+      IF(lwm) THEN
          REWIND( numnam_cfg )              ! Namelist namtra_adv in configuration namelist : Tracer advection scheme
          READ  ( numnam_cfg, namtra_adv, IOSTAT = ios, ERR = 902 )
-902      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namtra_adv in configuration namelist', lwm )
-      ENDIF
+902      CONTINUE
+      ENDIF
+      call mpp_bcast(ios)
+      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namtra_adv in configuration namelist', lwp )
       IF(lwm) WRITE ( numond, namtra_adv )
 
Index: /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/TRA/traadv_mle.F90
===================================================================
--- /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/TRA/traadv_mle.F90	(revision 9382)
+++ /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/TRA/traadv_mle.F90	(revision 9383)
@@ -286,9 +286,15 @@
          REWIND( numnam_ref )              ! Namelist namtra_adv_mle in reference namelist : Tracer advection scheme
          READ  ( numnam_ref, namtra_adv_mle, IOSTAT = ios, ERR = 901)
-901      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namtra_adv_mle in reference namelist', lwm )
+901      CONTINUE
+      ENDIF
+      call mpp_bcast(ios)
+      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namtra_adv_mle in reference namelist', lwp )
+      IF(lwm) THEN
          REWIND( numnam_cfg )              ! Namelist namtra_adv_mle in configuration namelist : Tracer advection scheme
          READ  ( numnam_cfg, namtra_adv_mle, IOSTAT = ios, ERR = 902 )
-902      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namtra_adv_mle in configuration namelist', lwm )
-      ENDIF
+902      CONTINUE
+      ENDIF
+      call mpp_bcast(ios)
+      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namtra_adv_mle in configuration namelist', lwp )
       IF(lwm) WRITE ( numond, namtra_adv_mle )
 
Index: /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/TRA/trabbc.F90
===================================================================
--- /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/TRA/trabbc.F90	(revision 9382)
+++ /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/TRA/trabbc.F90	(revision 9383)
@@ -143,9 +143,15 @@
          REWIND( numnam_ref )              ! Namelist nambbc in reference namelist : Bottom momentum boundary condition
          READ  ( numnam_ref, nambbc, IOSTAT = ios, ERR = 901)
-901      IF( ios /= 0 ) CALL ctl_nam ( ios , 'nambbc in reference namelist', lwm )
+901      CONTINUE
+      ENDIF
+      call mpp_bcast(ios)
+      IF( ios /= 0 ) CALL ctl_nam ( ios , 'nambbc in reference namelist', lwp )
+      IF(lwm) THEN
          REWIND( numnam_cfg )              ! Namelist nambbc in configuration namelist : Bottom momentum boundary condition
          READ  ( numnam_cfg, nambbc, IOSTAT = ios, ERR = 902 )
-902      IF( ios /= 0 ) CALL ctl_nam ( ios , 'nambbc in configuration namelist', lwm )
-      ENDIF
+902      CONTINUE
+      ENDIF
+      call mpp_bcast(ios)
+      IF( ios /= 0 ) CALL ctl_nam ( ios , 'nambbc in configuration namelist', lwp )
       IF(lwm) WRITE ( numond, nambbc )
 
Index: /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/TRA/trabbl.F90
===================================================================
--- /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/TRA/trabbl.F90	(revision 9382)
+++ /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/TRA/trabbl.F90	(revision 9383)
@@ -512,9 +512,15 @@
          REWIND( numnam_ref )              ! Namelist nambbl in reference namelist : Bottom boundary layer scheme
          READ  ( numnam_ref, nambbl, IOSTAT = ios, ERR = 901)
-901      IF( ios /= 0 ) CALL ctl_nam ( ios , 'nambbl in reference namelist', lwm )
+901      CONTINUE
+      ENDIF
+      call mpp_bcast(ios)
+      IF( ios /= 0 ) CALL ctl_nam ( ios , 'nambbl in reference namelist', lwp )
+      IF(lwm) THEN
          REWIND( numnam_cfg )              ! Namelist nambbl in configuration namelist : Bottom boundary layer scheme
          READ  ( numnam_cfg, nambbl, IOSTAT = ios, ERR = 902 )
-902      IF( ios /= 0 ) CALL ctl_nam ( ios , 'nambbl in configuration namelist', lwm )
-      ENDIF
+902      CONTINUE
+      ENDIF
+      call mpp_bcast(ios)
+      IF( ios /= 0 ) CALL ctl_nam ( ios , 'nambbl in configuration namelist', lwp )
 
       IF(lwm) WRITE ( numond, nambbl )
Index: /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/TRA/tradmp.F90
===================================================================
--- /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/TRA/tradmp.F90	(revision 9382)
+++ /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/TRA/tradmp.F90	(revision 9383)
@@ -200,9 +200,15 @@
          REWIND( numnam_ref )   ! Namelist namtra_dmp in reference namelist : T & S relaxation
          READ  ( numnam_ref, namtra_dmp, IOSTAT = ios, ERR = 901)
-901      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namtra_dmp in reference namelist', lwm )
+901      CONTINUE
+      ENDIF
+      call mpp_bcast(ios)
+      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namtra_dmp in reference namelist', lwp )
+      IF(lwm) THEN
          REWIND( numnam_cfg )   ! Namelist namtra_dmp in configuration namelist : T & S relaxation
          READ  ( numnam_cfg, namtra_dmp, IOSTAT = ios, ERR = 902 )
-902      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namtra_dmp in configuration namelist', lwm )
-      ENDIF
+902      CONTINUE
+      ENDIF
+      call mpp_bcast(ios)
+      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namtra_dmp in configuration namelist', lwp )
 
       IF(lwm) WRITE ( numond, namtra_dmp )
Index: /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/TRA/traqsr.F90
===================================================================
--- /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/TRA/traqsr.F90	(revision 9382)
+++ /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/TRA/traqsr.F90	(revision 9383)
@@ -438,9 +438,15 @@
          REWIND( numnam_ref )              ! Namelist namtra_qsr in reference namelist : Ratio and length of penetration
          READ  ( numnam_ref, namtra_qsr, IOSTAT = ios, ERR = 901)
-901      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namtra_qsr in reference namelist', lwm )
+901      CONTINUE
+      ENDIF
+      call mpp_bcast(ios)
+      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namtra_qsr in reference namelist', lwp )
+      IF(lwm) THEN
          REWIND( numnam_cfg )              !  Namelist namtra_qsr in configuration namelist : Ratio and length of penetration
          READ  ( numnam_cfg, namtra_qsr, IOSTAT = ios, ERR = 902 )
-902      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namtra_qsr in configuration namelist', lwm )
-      ENDIF
+902      CONTINUE
+      ENDIF
+      call mpp_bcast(ios)
+      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namtra_qsr in configuration namelist', lwp )
 
       IF(lwm) WRITE ( numond, namtra_qsr )
Index: /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/TRD/trdini.F90
===================================================================
--- /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/TRD/trdini.F90	(revision 9382)
+++ /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/TRD/trdini.F90	(revision 9383)
@@ -51,9 +51,15 @@
          REWIND( numnam_ref )              ! Namelist namtrd in reference namelist : trends diagnostic
          READ  ( numnam_ref, namtrd, IOSTAT = ios, ERR = 901 )
-901      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namtrd in reference namelist', lwm )
+901      CONTINUE
+      ENDIF
+      call mpp_bcast(ios)
+      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namtrd in reference namelist', lwp )
+      IF(lwm) THEN
          REWIND( numnam_cfg )              ! Namelist namtrd in configuration namelist : trends diagnostic
          READ  ( numnam_cfg, namtrd, IOSTAT = ios, ERR = 902 )
-902      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namtrd in configuration namelist', lwm )
+902      CONTINUE
       ENDIF
+      call mpp_bcast(ios)
+      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namtrd in configuration namelist', lwp )
 
       IF(lwm) WRITE( numond, namtrd )
Index: /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/TRD/trdmxl.F90
===================================================================
--- /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/TRD/trdmxl.F90	(revision 9382)
+++ /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/TRD/trdmxl.F90	(revision 9383)
@@ -761,9 +761,15 @@
          REWIND( numnam_ref )              ! Namelist namtrd_mxl in reference namelist : mixed layer trends diagnostic
          READ  ( numnam_ref, namtrd_mxl, IOSTAT = ios, ERR = 901 )
-901      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namtrd_mxl in reference namelist', lwm )
+901      CONTINUE
+      ENDIF
+      call mpp_bcast(ios)
+      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namtrd_mxl in reference namelist', lwp )
+      IF(lwm) THEN
          REWIND( numnam_cfg )              ! Namelist namtrd_mxl in configuration namelist : mixed layer trends diagnostic
          READ  ( numnam_cfg, namtrd_mxl, IOSTAT = ios, ERR = 902 )
-902      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namtrd_mxl in configuration namelist', lwm )
+902      CONTINUE
       ENDIF
+      call mpp_bcast(ios)
+      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namtrd_mxl in configuration namelist', lwp )
 
       IF(lwm) WRITE( numond, namtrd_mxl )
Index: /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/ZDF/zdfbfr.F90
===================================================================
--- /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/ZDF/zdfbfr.F90	(revision 9382)
+++ /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/ZDF/zdfbfr.F90	(revision 9383)
@@ -254,9 +254,16 @@
          REWIND( numnam_ref )              ! Namelist nambfr in reference namelist : Bottom momentum boundary condition
          READ  ( numnam_ref, nambfr, IOSTAT = ios, ERR = 901)
-901      IF( ios /= 0 ) CALL ctl_nam ( ios , 'nambfr in reference namelist', lwm )
+901      CONTINUE
+      ENDIF
+      call mpp_bcast(ios)
+      IF( ios /= 0 ) CALL ctl_nam ( ios , 'nambfr in reference namelist', lwp )
+      IF(lwm) THEN
          REWIND( numnam_cfg )              ! Namelist nambfr in configuration namelist : Bottom momentum boundary condition
          READ  ( numnam_cfg, nambfr, IOSTAT = ios, ERR = 902 )
-902      IF( ios /= 0 ) CALL ctl_nam ( ios , 'nambfr in configuration namelist', lwm )
-      ENDIF
+902      CONTINUE
+      ENDIF
+      call mpp_bcast(ios)
+      IF( ios /= 0 ) CALL ctl_nam ( ios , 'nambfr in configuration namelist', lwp )
+
       IF(lwm) WRITE ( numond, nambfr )
 
Index: /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/ZDF/zdfddm.F90
===================================================================
--- /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/ZDF/zdfddm.F90	(revision 9382)
+++ /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/ZDF/zdfddm.F90	(revision 9383)
@@ -243,9 +243,15 @@
          REWIND( numnam_ref )              ! Namelist namzdf_ddm in reference namelist : Double diffusion mixing scheme
          READ  ( numnam_ref, namzdf_ddm, IOSTAT = ios, ERR = 901)
-901      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namzdf_ddm in reference namelist', lwm )
+901      CONTINUE
+      ENDIF
+      call mpp_bcast(ios)
+      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namzdf_ddm in reference namelist', lwp )
+      IF(lwm) THEN
          REWIND( numnam_cfg )              ! Namelist namzdf_ddm in configuration namelist : Double diffusion mixing scheme
          READ  ( numnam_cfg, namzdf_ddm, IOSTAT = ios, ERR = 902 )
-902      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namzdf_ddm in configuration namelist', lwm )
+902      CONTINUE
       ENDIF
+      call mpp_bcast(ios)
+      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namzdf_ddm in configuration namelist', lwp )
 
       IF(lwm) WRITE ( numond, namzdf_ddm )
Index: /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/ZDF/zdfgls.F90
===================================================================
--- /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/ZDF/zdfgls.F90	(revision 9382)
+++ /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/ZDF/zdfgls.F90	(revision 9383)
@@ -879,10 +879,16 @@
          REWIND( numnam_ref )              ! Namelist namzdf_gls in reference namelist : Vertical eddy diffivity and viscosity using gls turbulent closure scheme
          READ  ( numnam_ref, namzdf_gls, IOSTAT = ios, ERR = 901)
-901      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namzdf_gls in reference namelist', lwm )
-
+901      CONTINUE
+      ENDIF
+      call mpp_bcast(ios)
+      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namzdf_gls in reference namelist', lwp )
+
+      IF(lwm) THEN
          REWIND( numnam_cfg )              ! Namelist namzdf_gls in configuration namelist : Vertical eddy diffivity and viscosity using gls turbulent closure scheme
          READ  ( numnam_cfg, namzdf_gls, IOSTAT = ios, ERR = 902 )
-902      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namzdf_gls in configuration namelist', lwm )
+902      CONTINUE
       ENDIF
+      call mpp_bcast(ios)
+      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namzdf_gls in configuration namelist', lwp )
 
       IF(lwm) WRITE ( numond, namzdf_gls )
Index: /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/ZDF/zdfini.F90
===================================================================
--- /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/ZDF/zdfini.F90	(revision 9382)
+++ /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/ZDF/zdfini.F90	(revision 9383)
@@ -61,9 +61,15 @@
          REWIND( numnam_ref )              ! Namelist namzdf in reference namelist : Vertical mixing parameters
          READ  ( numnam_ref, namzdf, IOSTAT = ios, ERR = 901)
-901      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namzdf in reference namelist', lwm )
+901      CONTINUE
+       ENDIF
+       call mpp_bcast(ios)
+       IF( ios /= 0 ) CALL ctl_nam ( ios , 'namzdf in reference namelist', lwm )
+       IF(lwm) THEN
          REWIND( numnam_cfg )              ! Namelist namzdf in reference namelist : Vertical mixing parameters
          READ  ( numnam_cfg, namzdf, IOSTAT = ios, ERR = 902 )
-902      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namzdf in configuration namelist', lwm )
-      ENDIF
+902      CONTINUE
+      ENDIF
+      call mpp_bcast(ios)
+      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namzdf in configuration namelist', lwm )
 
       IF(lwm) WRITE ( numond, namzdf )
Index: /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/ZDF/zdfkpp.F90
===================================================================
--- /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/ZDF/zdfkpp.F90	(revision 9382)
+++ /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/ZDF/zdfkpp.F90	(revision 9383)
@@ -1366,9 +1366,16 @@
          REWIND( numnam_ref )              ! Namelist namzdf_kpp in reference namelist : Vertical eddy diffivity and viscosity using kpp turbulent closure scheme
          READ  ( numnam_ref, namzdf_kpp, IOSTAT = ios, ERR = 901)
-901      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namzdf_kpp in reference namelist', lwm )
+901      CONTINUE
+      ENDIF
+      call mpp_bcast(ios)
+      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namzdf_kpp in reference namelist', lwp )
+      IF(lwm) THEN
          REWIND( numnam_cfg )              ! Namelist namzdf_kpp in configuration namelist : Vertical eddy diffivity and viscosity using kpp turbulent closure scheme
          READ  ( numnam_cfg, namzdf_kpp, IOSTAT = ios, ERR = 902 )
-902      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namzdf_kpp in configuration namelist', lwm )
+902      CONTINUE
       ENDIF
+      call mpp_bcast(ios)
+      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namzdf_kpp in configuration namelist', lwp )
+
       IF(lwm) WRITE ( numond, namzdf_kpp )
 
Index: /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/ZDF/zdfmxl.F90
===================================================================
--- /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/ZDF/zdfmxl.F90	(revision 9382)
+++ /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/ZDF/zdfmxl.F90	(revision 9383)
@@ -468,9 +468,15 @@
             REWIND( numnam_ref )              ! Namelist namzdf_mldzint in reference namelist 
             READ  ( numnam_ref, namzdf_mldzint, IOSTAT = ios, ERR = 901)
-901         IF( ios /= 0 ) CALL ctl_nam ( ios , 'namzdf_mldzint in reference namelist', lwm )
+901         CONTINUE
+         ENDIF
+         call mpp_bcast(ios)
+         IF( ios /= 0 ) CALL ctl_nam ( ios , 'namzdf_mldzint in reference namelist', lwp )
+         IF(lwm) THEN
             REWIND( numnam_cfg )              ! Namelist namzdf_mldzint in configuration namelist 
             READ  ( numnam_cfg, namzdf_mldzint, IOSTAT = ios, ERR = 902 )
-902         IF( ios /= 0 ) CALL ctl_nam ( ios , 'namzdf_mldzint in configuration namelist', lwm )
+902         CONTINUE
          ENDIF
+         call mpp_bcast(ios)
+         IF( ios /= 0 ) CALL ctl_nam ( ios , 'namzdf_mldzint in configuration namelist', lwp )
 
          IF(lwm) WRITE ( numond, namzdf_mldzint )
Index: /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/ZDF/zdfric.F90
===================================================================
--- /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/ZDF/zdfric.F90	(revision 9382)
+++ /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/ZDF/zdfric.F90	(revision 9383)
@@ -257,9 +257,14 @@
          REWIND( numnam_ref )              ! Namelist namzdf_ric in reference namelist : Vertical diffusion Kz depends on Richardson number
          READ  ( numnam_ref, namzdf_ric, IOSTAT = ios, ERR = 901)
-901      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namzdf_ric in reference namelist', lwm )
+901      CONTINUE
+      ENDIF
+      call mpp_bcast(ios)
+      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namzdf_ric in reference namelist', lwp )
          REWIND( numnam_cfg )              ! Namelist namzdf_ric in configuration namelist : Vertical diffusion Kz depends on Richardson number
          READ  ( numnam_cfg, namzdf_ric, IOSTAT = ios, ERR = 902 )
-902      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namzdf_ric in configuration namelist', lwm )
+902      CONTINUE
       ENDIF
+      call mpp_bcast(ios)
+      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namzdf_ric in configuration namelist', lwp )
 
       IF(lwm) WRITE ( numond, namzdf_ric )
Index: /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/ZDF/zdftke.F90
===================================================================
--- /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/ZDF/zdftke.F90	(revision 9382)
+++ /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/ZDF/zdftke.F90	(revision 9383)
@@ -784,9 +784,15 @@
          REWIND( numnam_ref )              ! Namelist namzdf_tke in reference namelist : Turbulent Kinetic Energy
          READ  ( numnam_ref, namzdf_tke, IOSTAT = ios, ERR = 901)
-901      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namzdf_tke in reference namelist', lwm )
+901      CONTINUE
+      ENDIF
+      call mpp_bcast(ios)
+      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namzdf_tke in reference namelist', lwp )
+      IF(lwm) THEN
          REWIND( numnam_cfg )              ! Namelist namzdf_tke in configuration namelist : Turbulent Kinetic Energy
          READ  ( numnam_cfg, namzdf_tke, IOSTAT = ios, ERR = 902 )
-902      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namzdf_tke in configuration namelist', lwm )
-      ENDIF
+902      CONTINUE
+      ENDIF
+      call mpp_bcast(ios)
+      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namzdf_tke in configuration namelist', lwp )
 
       IF(lwm) WRITE ( numond, namzdf_tke )
Index: /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/ZDF/zdftmx.F90
===================================================================
--- /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/ZDF/zdftmx.F90	(revision 9382)
+++ /branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/ZDF/zdftmx.F90	(revision 9383)
@@ -384,9 +384,15 @@
          REWIND( numnam_ref )              ! Namelist namzdf_tmx in reference namelist : Tidal Mixing
          READ  ( numnam_ref, namzdf_tmx, IOSTAT = ios, ERR = 901)
-901      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namzdf_tmx in reference namelist', lwm )
+901      CONTINUE
+      ENDIF
+      call mpp_bcast(ios)
+      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namzdf_tmx in reference namelist', lwp )
+      IF(lwm) THEN
          REWIND( numnam_cfg )              ! Namelist namzdf_tmx in configuration namelist : Tidal Mixing
          READ  ( numnam_cfg, namzdf_tmx, IOSTAT = ios, ERR = 902 )
-902      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namzdf_tmx in configuration namelist', lwm )
-      ENDIF
+902      CONTINUE
+      ENDIF
+      call mpp_bcast(ios)
+      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namzdf_tmx in configuration namelist', lwp )
 
       IF(lwm) WRITE ( numond, namzdf_tmx )
