@@ -865,11 +865,9 @@ int MPI_Info_create_env(int argc, char *argv[], MPI_Info *info);
865
865
int MPI_Info_delete (MPI_Info info , const char * key );
866
866
int MPI_Info_dup (MPI_Info info , MPI_Info * newinfo );
867
867
int MPI_Info_free (MPI_Info * info );
868
- int MPI_Info_get (MPI_Info info , const char * key , int valuelen , char * value , int * flag ); /* deprecated: MPI-4.0 */
869
868
int MPI_Info_get_nkeys (MPI_Info info , int * nkeys );
870
869
int MPI_Info_get_nthkey (MPI_Info info , int n , char * key );
871
870
int MPI_Info_get_string (MPI_Info info , const char * key , int * buflen , char * value , int * flag );
872
- int MPI_Info_get_valuelen (MPI_Info info , const char * key , int * valuelen , int * flag ); /* deprecated: MPI-4.0 */
873
871
int MPI_Info_set (MPI_Info info , const char * key , const char * value );
874
872
int MPI_Init (int * argc , char * * * argv );
875
873
int MPI_Init_thread (int * argc , char * * * argv , int required , int * provided );
@@ -1523,11 +1521,9 @@ int PMPI_Info_create_env(int argc, char *argv[], MPI_Info *info);
1523
1521
int PMPI_Info_delete (MPI_Info info , const char * key );
1524
1522
int PMPI_Info_dup (MPI_Info info , MPI_Info * newinfo );
1525
1523
int PMPI_Info_free (MPI_Info * info );
1526
- int PMPI_Info_get (MPI_Info info , const char * key , int valuelen , char * value , int * flag );
1527
1524
int PMPI_Info_get_nkeys (MPI_Info info , int * nkeys );
1528
1525
int PMPI_Info_get_nthkey (MPI_Info info , int n , char * key );
1529
1526
int PMPI_Info_get_string (MPI_Info info , const char * key , int * buflen , char * value , int * flag );
1530
- int PMPI_Info_get_valuelen (MPI_Info info , const char * key , int * valuelen , int * flag );
1531
1527
int PMPI_Info_set (MPI_Info info , const char * key , const char * value );
1532
1528
int PMPI_Init (int * argc , char * * * argv );
1533
1529
int PMPI_Init_thread (int * argc , char * * * argv , int required , int * provided );
@@ -1894,6 +1890,14 @@ int PMPI_T_source_get_timestamp(int source_index, MPI_Count *timestamp);
1894
1890
1895
1891
/* Backward-compatibility MPI API definitions for MPI ABI removals */
1896
1892
1893
+ #if !defined(MPI_ABI_static_inline )
1894
+ # if (defined(__STDC_VERSION__ ) && __STDC_VERSION__ >= 199901L ) || defined(__cplusplus )
1895
+ # define MPI_ABI_static_inline static inline
1896
+ # else
1897
+ # define MPI_ABI_static_inline static __inline
1898
+ # endif
1899
+ #endif
1900
+
1897
1901
/* MPI deprecated types and constants */
1898
1902
#define MPI_Copy_function MPI_Comm_copy_attr_function
1899
1903
#define MPI_Delete_function MPI_Comm_delete_attr_function
@@ -1913,6 +1917,18 @@ int PMPI_T_source_get_timestamp(int source_index, MPI_Count *timestamp);
1913
1917
#define MPI_Type_get_true_extent_x MPI_Type_get_true_extent_c
1914
1918
#define MPI_Type_size_x MPI_Type_size_c
1915
1919
1920
+ MPI_ABI_static_inline int MPI_Info_get (MPI_Info MPI_info , const char * MPI_key , int MPI_valuelen , char * MPI_value , int * MPI_flag ) {
1921
+ int MPI_buflen = MPI_valuelen + 1 ;
1922
+ return MPI_Info_get_string (MPI_info , MPI_key , & MPI_buflen , MPI_value , MPI_flag );
1923
+ }
1924
+
1925
+ MPI_ABI_static_inline int MPI_Info_get_valuelen (MPI_Info MPI_info , const char * MPI_key , int * MPI_valuelen , int * MPI_flag ) {
1926
+ int MPI_ierr ; int MPI_buflen = 0 ; char MPI_value [1 ] = {0 };
1927
+ MPI_ierr = MPI_Info_get_string (MPI_info , MPI_key , MPI_valuelen ? & MPI_buflen : MPI_valuelen , MPI_value , MPI_flag );
1928
+ if (MPI_ierr == MPI_SUCCESS && MPI_valuelen ) * MPI_valuelen = MPI_buflen - 1 ;
1929
+ return MPI_ierr ;
1930
+ }
1931
+
1916
1932
/* PMPI deprecated functions */
1917
1933
#define PMPI_Attr_delete PMPI_Comm_delete_attr
1918
1934
#define PMPI_Attr_get PMPI_Comm_get_attr
@@ -1925,6 +1941,18 @@ int PMPI_T_source_get_timestamp(int source_index, MPI_Count *timestamp);
1925
1941
#define PMPI_Type_get_true_extent_x PMPI_Type_get_true_extent_c
1926
1942
#define PMPI_Type_size_x PMPI_Type_size_c
1927
1943
1944
+ MPI_ABI_static_inline int PMPI_Info_get (MPI_Info MPI_info , const char * MPI_key , int MPI_valuelen , char * MPI_value , int * MPI_flag ) {
1945
+ int MPI_buflen = MPI_valuelen + 1 ;
1946
+ return PMPI_Info_get_string (MPI_info , MPI_key , & MPI_buflen , MPI_value , MPI_flag );
1947
+ }
1948
+
1949
+ MPI_ABI_static_inline int PMPI_Info_get_valuelen (MPI_Info MPI_info , const char * MPI_key , int * MPI_valuelen , int * MPI_flag ) {
1950
+ int MPI_ierr ; int MPI_buflen = 0 ; char MPI_value [1 ] = {0 };
1951
+ MPI_ierr = PMPI_Info_get_string (MPI_info , MPI_key , MPI_valuelen ? & MPI_buflen : MPI_valuelen , MPI_value , MPI_flag );
1952
+ if (MPI_ierr == MPI_SUCCESS && MPI_valuelen ) * MPI_valuelen = MPI_buflen - 1 ;
1953
+ return MPI_ierr ;
1954
+ }
1955
+
1928
1956
#if defined(__cplusplus )
1929
1957
}
1930
1958
#endif
0 commit comments