Ignore:
Timestamp:
03/24/15 11:21:45 (9 years ago)
Author:
rlacroix
Message:

Fix the Fortran interface generation to avoid generating dead code that caused a timer not to be stopped.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • XIOS/trunk/src/interface/fortran_attr/igridgroup_attr.F90

    r575 r581  
    88  USE igrid 
    99  USE gridgroup_interface_attr 
    10    
     10 
    1111CONTAINS 
    12    
     12 
    1313  SUBROUTINE xios(set_gridgroup_attr)  & 
    1414    ( gridgroup_id, axis_domain_order, description, group_ref, mask1, mask2, mask3, name ) 
    15      
     15 
    1616    IMPLICIT NONE 
    1717      TYPE(txios(gridgroup))  :: gridgroup_hdl 
     
    2828      LOGICAL (KIND=C_BOOL) , ALLOCATABLE :: mask3_tmp(:,:,:) 
    2929      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: name 
    30        
     30 
    3131      CALL xios(get_gridgroup_handle)(gridgroup_id,gridgroup_hdl) 
    3232      CALL xios(set_gridgroup_attr_hdl_)   & 
    3333      ( gridgroup_hdl, axis_domain_order, description, group_ref, mask1, mask2, mask3, name ) 
    34      
     34 
    3535  END SUBROUTINE xios(set_gridgroup_attr) 
    36    
     36 
    3737  SUBROUTINE xios(set_gridgroup_attr_hdl)  & 
    3838    ( gridgroup_hdl, axis_domain_order, description, group_ref, mask1, mask2, mask3, name ) 
    39      
     39 
    4040    IMPLICIT NONE 
    4141      TYPE(txios(gridgroup)) , INTENT(IN) :: gridgroup_hdl 
     
    5151      LOGICAL (KIND=C_BOOL) , ALLOCATABLE :: mask3_tmp(:,:,:) 
    5252      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: name 
    53        
     53 
    5454      CALL xios(set_gridgroup_attr_hdl_)  & 
    5555      ( gridgroup_hdl, axis_domain_order, description, group_ref, mask1, mask2, mask3, name ) 
    56      
     56 
    5757  END SUBROUTINE xios(set_gridgroup_attr_hdl) 
    58    
     58 
    5959  SUBROUTINE xios(set_gridgroup_attr_hdl_)   & 
    6060    ( gridgroup_hdl, axis_domain_order_, description_, group_ref_, mask1_, mask2_, mask3_, name_  & 
    6161     ) 
    62      
     62 
    6363    IMPLICIT NONE 
    6464      TYPE(txios(gridgroup)) , INTENT(IN) :: gridgroup_hdl 
     
    7474      LOGICAL (KIND=C_BOOL) , ALLOCATABLE :: mask3__tmp(:,:,:) 
    7575      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: name_ 
    76        
     76 
    7777      IF (PRESENT(axis_domain_order_)) THEN 
    7878        ALLOCATE(axis_domain_order__tmp(size(axis_domain_order_,1))) 
    79         axis_domain_order__tmp=axis_domain_order_ 
    80         CALL cxios_set_gridgroup_axis_domain_order(gridgroup_hdl%daddr, axis_domain_order__tmp,size(axis_domain_order_,1)) 
    81       ENDIF 
    82        
     79        axis_domain_order__tmp = axis_domain_order_ 
     80        CALL cxios_set_gridgroup_axis_domain_order(gridgroup_hdl%daddr, axis_domain_order__tmp, size(axis_domain_order_,1)) 
     81      ENDIF 
     82 
    8383      IF (PRESENT(description_)) THEN 
    8484        CALL cxios_set_gridgroup_description(gridgroup_hdl%daddr, description_, len(description_)) 
    8585      ENDIF 
    86        
     86 
    8787      IF (PRESENT(group_ref_)) THEN 
    8888        CALL cxios_set_gridgroup_group_ref(gridgroup_hdl%daddr, group_ref_, len(group_ref_)) 
    8989      ENDIF 
    90        
     90 
    9191      IF (PRESENT(mask1_)) THEN 
    9292        ALLOCATE(mask1__tmp(size(mask1_,1))) 
    93         mask1__tmp=mask1_ 
    94         CALL cxios_set_gridgroup_mask1(gridgroup_hdl%daddr, mask1__tmp,size(mask1_,1)) 
    95       ENDIF 
    96        
     93        mask1__tmp = mask1_ 
     94        CALL cxios_set_gridgroup_mask1(gridgroup_hdl%daddr, mask1__tmp, size(mask1_,1)) 
     95      ENDIF 
     96 
    9797      IF (PRESENT(mask2_)) THEN 
    98         ALLOCATE(mask2__tmp(size(mask2_,1),size(mask2_,2))) 
    99         mask2__tmp=mask2_ 
    100         CALL cxios_set_gridgroup_mask2(gridgroup_hdl%daddr, mask2__tmp,size(mask2_,1),size(mask2_,2)) 
    101       ENDIF 
    102        
     98        ALLOCATE(mask2__tmp(size(mask2_,1), size(mask2_,2))) 
     99        mask2__tmp = mask2_ 
     100        CALL cxios_set_gridgroup_mask2(gridgroup_hdl%daddr, mask2__tmp, size(mask2_,1), size(mask2_,2)) 
     101      ENDIF 
     102 
    103103      IF (PRESENT(mask3_)) THEN 
    104         ALLOCATE(mask3__tmp(size(mask3_,1),size(mask3_,2),size(mask3_,3))) 
    105         mask3__tmp=mask3_ 
    106         CALL cxios_set_gridgroup_mask3(gridgroup_hdl%daddr, mask3__tmp,size(mask3_,1),size(mask3_,2),size(mask3_,3)) 
    107       ENDIF 
    108        
     104        ALLOCATE(mask3__tmp(size(mask3_,1), size(mask3_,2), size(mask3_,3))) 
     105        mask3__tmp = mask3_ 
     106        CALL cxios_set_gridgroup_mask3(gridgroup_hdl%daddr, mask3__tmp, size(mask3_,1), size(mask3_,2), size(mask3_,3)) 
     107      ENDIF 
     108 
    109109      IF (PRESENT(name_)) THEN 
    110110        CALL cxios_set_gridgroup_name(gridgroup_hdl%daddr, name_, len(name_)) 
    111111      ENDIF 
    112        
    113        
    114      
     112 
    115113  END SUBROUTINE xios(set_gridgroup_attr_hdl_) 
    116    
     114 
    117115  SUBROUTINE xios(get_gridgroup_attr)  & 
    118116    ( gridgroup_id, axis_domain_order, description, group_ref, mask1, mask2, mask3, name ) 
    119      
     117 
    120118    IMPLICIT NONE 
    121119      TYPE(txios(gridgroup))  :: gridgroup_hdl 
     
    132130      LOGICAL (KIND=C_BOOL) , ALLOCATABLE :: mask3_tmp(:,:,:) 
    133131      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: name 
    134        
     132 
    135133      CALL xios(get_gridgroup_handle)(gridgroup_id,gridgroup_hdl) 
    136134      CALL xios(get_gridgroup_attr_hdl_)   & 
    137135      ( gridgroup_hdl, axis_domain_order, description, group_ref, mask1, mask2, mask3, name ) 
    138      
     136 
    139137  END SUBROUTINE xios(get_gridgroup_attr) 
    140    
     138 
    141139  SUBROUTINE xios(get_gridgroup_attr_hdl)  & 
    142140    ( gridgroup_hdl, axis_domain_order, description, group_ref, mask1, mask2, mask3, name ) 
    143      
     141 
    144142    IMPLICIT NONE 
    145143      TYPE(txios(gridgroup)) , INTENT(IN) :: gridgroup_hdl 
     
    155153      LOGICAL (KIND=C_BOOL) , ALLOCATABLE :: mask3_tmp(:,:,:) 
    156154      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: name 
    157        
     155 
    158156      CALL xios(get_gridgroup_attr_hdl_)  & 
    159157      ( gridgroup_hdl, axis_domain_order, description, group_ref, mask1, mask2, mask3, name ) 
    160      
     158 
    161159  END SUBROUTINE xios(get_gridgroup_attr_hdl) 
    162    
     160 
    163161  SUBROUTINE xios(get_gridgroup_attr_hdl_)   & 
    164162    ( gridgroup_hdl, axis_domain_order_, description_, group_ref_, mask1_, mask2_, mask3_, name_  & 
    165163     ) 
    166      
     164 
    167165    IMPLICIT NONE 
    168166      TYPE(txios(gridgroup)) , INTENT(IN) :: gridgroup_hdl 
     
    178176      LOGICAL (KIND=C_BOOL) , ALLOCATABLE :: mask3__tmp(:,:,:) 
    179177      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: name_ 
    180        
     178 
    181179      IF (PRESENT(axis_domain_order_)) THEN 
    182180        ALLOCATE(axis_domain_order__tmp(size(axis_domain_order_,1))) 
    183         CALL cxios_get_gridgroup_axis_domain_order(gridgroup_hdl%daddr, axis_domain_order__tmp,size(axis_domain_order_,1)) 
    184         axis_domain_order_=axis_domain_order__tmp 
    185       ENDIF 
    186        
     181        CALL cxios_get_gridgroup_axis_domain_order(gridgroup_hdl%daddr, axis_domain_order__tmp, size(axis_domain_order_,1)) 
     182        axis_domain_order_ = axis_domain_order__tmp 
     183      ENDIF 
     184 
    187185      IF (PRESENT(description_)) THEN 
    188186        CALL cxios_get_gridgroup_description(gridgroup_hdl%daddr, description_, len(description_)) 
    189187      ENDIF 
    190        
     188 
    191189      IF (PRESENT(group_ref_)) THEN 
    192190        CALL cxios_get_gridgroup_group_ref(gridgroup_hdl%daddr, group_ref_, len(group_ref_)) 
    193191      ENDIF 
    194        
     192 
    195193      IF (PRESENT(mask1_)) THEN 
    196194        ALLOCATE(mask1__tmp(size(mask1_,1))) 
    197         CALL cxios_get_gridgroup_mask1(gridgroup_hdl%daddr, mask1__tmp,size(mask1_,1)) 
    198         mask1_=mask1__tmp 
    199       ENDIF 
    200        
     195        CALL cxios_get_gridgroup_mask1(gridgroup_hdl%daddr, mask1__tmp, size(mask1_,1)) 
     196        mask1_ = mask1__tmp 
     197      ENDIF 
     198 
    201199      IF (PRESENT(mask2_)) THEN 
    202         ALLOCATE(mask2__tmp(size(mask2_,1),size(mask2_,2))) 
    203         CALL cxios_get_gridgroup_mask2(gridgroup_hdl%daddr, mask2__tmp,size(mask2_,1),size(mask2_,2)) 
    204         mask2_=mask2__tmp 
    205       ENDIF 
    206        
     200        ALLOCATE(mask2__tmp(size(mask2_,1), size(mask2_,2))) 
     201        CALL cxios_get_gridgroup_mask2(gridgroup_hdl%daddr, mask2__tmp, size(mask2_,1), size(mask2_,2)) 
     202        mask2_ = mask2__tmp 
     203      ENDIF 
     204 
    207205      IF (PRESENT(mask3_)) THEN 
    208         ALLOCATE(mask3__tmp(size(mask3_,1),size(mask3_,2),size(mask3_,3))) 
    209         CALL cxios_get_gridgroup_mask3(gridgroup_hdl%daddr, mask3__tmp,size(mask3_,1),size(mask3_,2),size(mask3_,3)) 
    210         mask3_=mask3__tmp 
    211       ENDIF 
    212        
     206        ALLOCATE(mask3__tmp(size(mask3_,1), size(mask3_,2), size(mask3_,3))) 
     207        CALL cxios_get_gridgroup_mask3(gridgroup_hdl%daddr, mask3__tmp, size(mask3_,1), size(mask3_,2), size(mask3_,3)) 
     208        mask3_ = mask3__tmp 
     209      ENDIF 
     210 
    213211      IF (PRESENT(name_)) THEN 
    214212        CALL cxios_get_gridgroup_name(gridgroup_hdl%daddr, name_, len(name_)) 
    215213      ENDIF 
    216        
    217        
    218      
     214 
    219215  END SUBROUTINE xios(get_gridgroup_attr_hdl_) 
    220    
     216 
    221217  SUBROUTINE xios(is_defined_gridgroup_attr)  & 
    222218    ( gridgroup_id, axis_domain_order, description, group_ref, mask1, mask2, mask3, name ) 
    223      
     219 
    224220    IMPLICIT NONE 
    225221      TYPE(txios(gridgroup))  :: gridgroup_hdl 
     
    239235      LOGICAL, OPTIONAL, INTENT(OUT) :: name 
    240236      LOGICAL(KIND=C_BOOL) :: name_tmp 
    241        
     237 
    242238      CALL xios(get_gridgroup_handle)(gridgroup_id,gridgroup_hdl) 
    243239      CALL xios(is_defined_gridgroup_attr_hdl_)   & 
    244240      ( gridgroup_hdl, axis_domain_order, description, group_ref, mask1, mask2, mask3, name ) 
    245      
     241 
    246242  END SUBROUTINE xios(is_defined_gridgroup_attr) 
    247    
     243 
    248244  SUBROUTINE xios(is_defined_gridgroup_attr_hdl)  & 
    249245    ( gridgroup_hdl, axis_domain_order, description, group_ref, mask1, mask2, mask3, name ) 
    250      
     246 
    251247    IMPLICIT NONE 
    252248      TYPE(txios(gridgroup)) , INTENT(IN) :: gridgroup_hdl 
     
    265261      LOGICAL, OPTIONAL, INTENT(OUT) :: name 
    266262      LOGICAL(KIND=C_BOOL) :: name_tmp 
    267        
     263 
    268264      CALL xios(is_defined_gridgroup_attr_hdl_)  & 
    269265      ( gridgroup_hdl, axis_domain_order, description, group_ref, mask1, mask2, mask3, name ) 
    270      
     266 
    271267  END SUBROUTINE xios(is_defined_gridgroup_attr_hdl) 
    272    
     268 
    273269  SUBROUTINE xios(is_defined_gridgroup_attr_hdl_)   & 
    274270    ( gridgroup_hdl, axis_domain_order_, description_, group_ref_, mask1_, mask2_, mask3_, name_  & 
    275271     ) 
    276      
     272 
    277273    IMPLICIT NONE 
    278274      TYPE(txios(gridgroup)) , INTENT(IN) :: gridgroup_hdl 
     
    291287      LOGICAL, OPTIONAL, INTENT(OUT) :: name_ 
    292288      LOGICAL(KIND=C_BOOL) :: name__tmp 
    293        
     289 
    294290      IF (PRESENT(axis_domain_order_)) THEN 
    295         axis_domain_order__tmp=cxios_is_defined_gridgroup_axis_domain_order(gridgroup_hdl%daddr) 
    296         axis_domain_order_=axis_domain_order__tmp 
    297       ENDIF 
    298        
     291        axis_domain_order__tmp = cxios_is_defined_gridgroup_axis_domain_order(gridgroup_hdl%daddr) 
     292        axis_domain_order_ = axis_domain_order__tmp 
     293      ENDIF 
     294 
    299295      IF (PRESENT(description_)) THEN 
    300         description__tmp=cxios_is_defined_gridgroup_description(gridgroup_hdl%daddr) 
    301         description_=description__tmp 
    302       ENDIF 
    303        
     296        description__tmp = cxios_is_defined_gridgroup_description(gridgroup_hdl%daddr) 
     297        description_ = description__tmp 
     298      ENDIF 
     299 
    304300      IF (PRESENT(group_ref_)) THEN 
    305         group_ref__tmp=cxios_is_defined_gridgroup_group_ref(gridgroup_hdl%daddr) 
    306         group_ref_=group_ref__tmp 
    307       ENDIF 
    308        
     301        group_ref__tmp = cxios_is_defined_gridgroup_group_ref(gridgroup_hdl%daddr) 
     302        group_ref_ = group_ref__tmp 
     303      ENDIF 
     304 
    309305      IF (PRESENT(mask1_)) THEN 
    310         mask1__tmp=cxios_is_defined_gridgroup_mask1(gridgroup_hdl%daddr) 
    311         mask1_=mask1__tmp 
    312       ENDIF 
    313        
     306        mask1__tmp = cxios_is_defined_gridgroup_mask1(gridgroup_hdl%daddr) 
     307        mask1_ = mask1__tmp 
     308      ENDIF 
     309 
    314310      IF (PRESENT(mask2_)) THEN 
    315         mask2__tmp=cxios_is_defined_gridgroup_mask2(gridgroup_hdl%daddr) 
    316         mask2_=mask2__tmp 
    317       ENDIF 
    318        
     311        mask2__tmp = cxios_is_defined_gridgroup_mask2(gridgroup_hdl%daddr) 
     312        mask2_ = mask2__tmp 
     313      ENDIF 
     314 
    319315      IF (PRESENT(mask3_)) THEN 
    320         mask3__tmp=cxios_is_defined_gridgroup_mask3(gridgroup_hdl%daddr) 
    321         mask3_=mask3__tmp 
    322       ENDIF 
    323        
     316        mask3__tmp = cxios_is_defined_gridgroup_mask3(gridgroup_hdl%daddr) 
     317        mask3_ = mask3__tmp 
     318      ENDIF 
     319 
    324320      IF (PRESENT(name_)) THEN 
    325         name__tmp=cxios_is_defined_gridgroup_name(gridgroup_hdl%daddr) 
    326         name_=name__tmp 
    327       ENDIF 
    328        
    329        
    330      
     321        name__tmp = cxios_is_defined_gridgroup_name(gridgroup_hdl%daddr) 
     322        name_ = name__tmp 
     323      ENDIF 
     324 
    331325  END SUBROUTINE xios(is_defined_gridgroup_attr_hdl_) 
    332    
     326 
    333327END MODULE igridgroup_attr 
Note: See TracChangeset for help on using the changeset viewer.