From 70fcacf4831d739fd0ab8bcaaf29923254ac3f9f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=A9rgio=20M=2E=20Basto?= Date: Sun, 21 Jan 2024 22:17:33 +0000 Subject: [PATCH] Fix GCC-14 new errors (https://github.com/openpmix/openpmix/pull/3245) --- 3245.patch | 42 ++++++++++++++++++++++++++++++++++++++++++ openmpi.spec | 2 ++ 2 files changed, 44 insertions(+) create mode 100644 3245.patch diff --git a/3245.patch b/3245.patch new file mode 100644 index 0000000..cda3aa4 --- /dev/null +++ b/3245.patch @@ -0,0 +1,42 @@ +From 83dc94bf8da119057f543a12e4432aa48cd44e20 Mon Sep 17 00:00:00 2001 +From: Ralph Castain +Date: Tue, 19 Dec 2023 15:11:21 -0700 +Subject: [PATCH] Cast a few parameters when translating macros to functions + +When we made the transition from macros to functions, we +were forced to move things that went on the left side of +an `=` sign to being addresses of params to the function +call. Compilers are getting increasinly picky about matching +parameter types, so cast a few that might cause trouble. + +Signed-off-by: Ralph Castain +--- + include/pmix_deprecated.h | 6 +++--- + 1 file changed, 3 insertions(+), 3 deletions(-) + +diff --git a/include/pmix_deprecated.h b/include/pmix_deprecated.h +index 0530123309..6ec00ac310 100644 +--- a/3rd-party/openpmix/include/pmix_deprecated.h ++++ b/3rd-party/openpmix/include/pmix_deprecated.h +@@ -520,10 +520,10 @@ PMIX_EXPORT pmix_info_t* PMIx_Info_list_get_info(void *ptr, void *prev, void **n + (r) = PMIx_Argv_count(a) + + #define PMIX_ARGV_APPEND(r, a, b) \ +- (r) = PMIx_Argv_append_nosize(&(a), (b)) ++ (r) = PMIx_Argv_append_nosize((char***)&(a), (b)) + + #define PMIX_ARGV_PREPEND(r, a, b) \ +- (r) = PMIx_Argv_prepend_nosize(&(a), b) ++ (r) = PMIx_Argv_prepend_nosize((char***)&(a), b) + + #define PMIX_ARGV_APPEND_UNIQUE(r, a, b) \ + (r) = PMIx_Argv_append_unique_nosize(a, b) +@@ -892,7 +892,7 @@ PMIX_EXPORT pmix_info_t* PMIx_Info_list_get_info(void *ptr, void *prev, void **n + PMIx_Data_buffer_load(b, d, s) + + #define PMIX_DATA_BUFFER_UNLOAD(b, d, s) \ +- PMIx_Data_buffer_unload(b, &(d), &(s)) ++ PMIx_Data_buffer_unload(b, (char**)&(d), (size_t*)&(s)) + + #define PMIX_PROC_CREATE(m, n) \ + (m) = PMIx_Proc_create(n) diff --git a/openmpi.spec b/openmpi.spec index f73d675..f47d844 100644 --- a/openmpi.spec +++ b/openmpi.spec @@ -76,6 +76,7 @@ Source1: openmpi.module.in Source2: openmpi.pth.py2 Source3: openmpi.pth.py3 Source4: macros.openmpi +Patch1: 3245.patch BuildRequires: gcc-c++ BuildRequires: gcc-gfortran @@ -451,6 +452,7 @@ make check || ( cat test/*/test-suite.log && exit $fail ) %changelog * Sun Jan 21 2024 Fedora Release Engineering - 5.0.1-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild +- Fix GCC-14 new errors (https://github.com/openpmix/openpmix/pull/3245) * Thu Dec 21 2023 Orion Poplawski - 5.0.1-1 - Update to 5.0.1