Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package gdb for openSUSE:Factory checked in at 2022-03-04 00:16:59 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/gdb (Old) and /work/SRC/openSUSE:Factory/.gdb.new.1958 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "gdb" Fri Mar 4 00:16:59 2022 rev:161 rq:958414 version:11.1 Changes: -------- --- /work/SRC/openSUSE:Factory/gdb/gdb.changes 2022-02-13 19:50:38.958149817 +0100 +++ /work/SRC/openSUSE:Factory/.gdb.new.1958/gdb.changes 2022-03-04 00:17:15.576280396 +0100 @@ -1,0 +2,6 @@ +Fri Feb 25 14:53:56 UTC 2022 - Tom de Vries <tdevr...@suse.com> + +- Patch added (backport from master): + * fix-build-with-current-gcc-el_explicit-location-always-non-null.patch + +------------------------------------------------------------------- New: ---- fix-build-with-current-gcc-el_explicit-location-always-non-null.patch ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ gdb.spec ++++++ --- /var/tmp/diff_new_pack.RFO0OD/_old 2022-03-04 00:17:18.268280964 +0100 +++ /var/tmp/diff_new_pack.RFO0OD/_new 2022-03-04 00:17:18.272280965 +0100 @@ -348,6 +348,7 @@ Patch2035: gdb-r_version-check.patch Patch2036: ibm-z-add-another-arch14-instruction.patch Patch2037: ibm-z-remove-lpswey-parameter.patch +Patch2038: fix-build-with-current-gcc-el_explicit-location-always-non-null.patch # Backports from master, not yet available in next release. @@ -805,6 +806,7 @@ %patch2035 -p1 %patch2036 -p1 %patch2037 -p1 +%patch2038 -p1 %patch2100 -p1 %patch2101 -p1 ++++++ fix-build-with-current-gcc-el_explicit-location-always-non-null.patch ++++++ Fix build with current GCC: EL_EXPLICIT(location) always non-NULL Compiling GDB with current GCC (1b4a63593b) runs into this: src/gdb/location.c: In function 'int event_location_empty_p(const event_location*)': src/gdb/location.c:963:38: error: the address of 'event_location::<unnamed union>::explicit_loc' will never be NULL [-Werror=address] 963 | return (EL_EXPLICIT (location) == NULL | ^ src/gdb/location.c:57:30: note: 'event_location::<unnamed union>::explicit_loc' declared here 57 | struct explicit_location explicit_loc; | ^~~~~~~~~~~~ GCC is right, EL_EXPLICIT is defined as returning the address of an union field: /* An explicit location. */ struct explicit_location explicit_loc; #define EL_EXPLICIT(P) (&((P)->u.explicit_loc)) and thus must always be non-NULL. Change-Id: Ie74fee7834495a93affcefce03c06e4d83ad8191 --- gdb/location.c | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/gdb/location.c b/gdb/location.c index 827294e106a..1ee20069313 100644 --- a/gdb/location.c +++ b/gdb/location.c @@ -960,12 +960,11 @@ event_location_empty_p (const struct event_location *location) return 0; case EXPLICIT_LOCATION: - return (EL_EXPLICIT (location) == NULL - || (EL_EXPLICIT (location)->source_filename == NULL - && EL_EXPLICIT (location)->function_name == NULL - && EL_EXPLICIT (location)->label_name == NULL - && (EL_EXPLICIT (location)->line_offset.sign - == LINE_OFFSET_UNKNOWN))); + return (EL_EXPLICIT (location)->source_filename == NULL + && EL_EXPLICIT (location)->function_name == NULL + && EL_EXPLICIT (location)->label_name == NULL + && (EL_EXPLICIT (location)->line_offset.sign + == LINE_OFFSET_UNKNOWN)); case PROBE_LOCATION: return EL_PROBE (location) == NULL;