From 9858f5746cf823d308e32fe4d22becd472b81cf3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=A9rgio=20M=2E=20Basto?= Date: Sun, 21 Jan 2024 22:45:10 +0000 Subject: [PATCH] Fix GCC-14 new errors (https://github.com/openpmix/openpmix/pull/3245) --- 3245.patch | 42 ++++++++++++++++++++++++++++++++++++++++++ pmix.spec | 4 +++- 2 files changed, 45 insertions(+), 1 deletion(-) create mode 100644 3245.patch diff --git a/3245.patch b/3245.patch new file mode 100644 index 0000000..2ffe6c6 --- /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/include/pmix_deprecated.h ++++ b/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/pmix.spec b/pmix.spec index 3a623e1..56167cd 100644 --- a/pmix.spec +++ b/pmix.spec @@ -5,6 +5,7 @@ Summary: Process Management Interface Exascale (PMIx) License: BSD-3-Clause URL: https://pmix.org/ Source0: https://github.com/openpmix/openpmix/releases/download/v%{version}/%{name}-%{version}.tar.bz2 +Patch1: https://github.com/openpmix/openpmix/pull/3245.patch BuildRequires: autoconf BuildRequires: automake @@ -57,7 +58,7 @@ based starters (e.g., mpirun). * pevent - inject an event into the system %prep -%setup -q -n %{name}-%{version} +%autosetup -p1 # touch lexer sources to recompile them find src -name \*.l -print -exec touch --no-create {} \; @@ -117,6 +118,7 @@ find %{buildroot} -name '*.la' | xargs rm -f %changelog * Sun Jan 21 2024 Fedora Release Engineering - 4.2.7-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild +- Fix GCC-14 new errors (https://github.com/openpmix/openpmix/pull/3245) * Fri Oct 27 2023 Orion Poplawski - 4.2.7-1 - Update to 4.2.7