This is the mail archive of the
gdb-patches@sourceware.org
mailing list for the GDB project.
Re: [commit] reimplement AIX shared-lib support (v3)
- From: Joel Brobecker <brobecker at adacore dot com>
- To: Luis Machado <lgustavo at codesourcery dot com>
- Cc: Tom Tromey <tromey at redhat dot com>, gdb-patches at sourceware dot org
- Date: Wed, 8 May 2013 10:15:42 +0400
- Subject: Re: [commit] reimplement AIX shared-lib support (v3)
- References: <1367850045-26717-1-git-send-email-brobecker at adacore dot com> <5189057B dot 5070909 at codesourcery dot com> <874neex4e2 dot fsf at fleche dot redhat dot com> <51890CF4 dot 5090709 at codesourcery dot com> <20130507142812 dot GQ5278 at adacore dot com> <51891375 dot 2020105 at codesourcery dot com>
> Ah, here it is.
>
> The failure seems to be due to solib_aix_free_library_list only
> being defined if HAVE_LIBEXPAT is defined, but it is being used in
> solib_aix_normal_stop_observer regardless of HAVE_LIBEXPAT being
> defined or not.
>
> I was missing libexpat in my system, so that's why i was seeing this
> failure. Looks like it is a real GDB bug.
Ah, you are very right, and if I understand things correctly, you'd
even have a link failure if you compiled past the warning. Fixed
thusly:
gdb/ChangeLog:
* solib-aix.c (solib_aix_free_library_list): New function
for the case where HAVE_LIBEXPAT is not defined.
Although, now that I have checked the change in, I am wondering
whether I could simply move the function out of the #if defined
(and whether that might make sense or not)... The main advantage
is that we're not duplicating the function's prototype.
Not much time today, but I will keep that for tomorrow. In the meantime,
I wanted the problem to be fixed ASAP.
--
Joel
>From 786ba18d6cc536a7ccf2ac18b8e81b65758939f6 Mon Sep 17 00:00:00 2001
From: Joel Brobecker <brobecker@adacore.com>
Date: Wed, 8 May 2013 10:02:45 +0400
Subject: [PATCH] Dummy implementation of solib_aix_free_library_list if
libexpat missing.
gdb/ChangeLog:
* solib-aix.c (solib_aix_free_library_list): New function
for the case where HAVE_LIBEXPAT is not defined.
---
gdb/ChangeLog | 5 +++++
gdb/solib-aix.c | 7 +++++++
2 files changed, 12 insertions(+)
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index 2506ce5..f830db6 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,3 +1,8 @@
+2013-05-08 Joel Brobecker <brobecker@adacore.com>
+
+ * solib-aix.c (solib_aix_free_library_list): New function
+ for the case where HAVE_LIBEXPAT is not defined.
+
2013-05-07 Sergio Durigan Junior <sergiodj@redhat.com>
PR breakpoints/15413:
diff --git a/gdb/solib-aix.c b/gdb/solib-aix.c
index d930769..9fa5de9 100644
--- a/gdb/solib-aix.c
+++ b/gdb/solib-aix.c
@@ -141,6 +141,13 @@ solib_aix_parse_libraries (const char *library)
return NULL;
}
+/* Dummy implementation if XML support is not compiled in. */
+
+static void
+solib_aix_free_library_list (void *p)
+{
+}
+
#else /* HAVE_LIBEXPAT */
#include "xml-support.h"
--
1.7.10.4